PHP: vlastní error v trigger_error?
potřeboval bych poradit jak vytvořit vlastní E_USER_NECO chybu
aby minásledně trigger_error('chybka', E_USER_NECO)
nevracel chybu
Invalid error type specified in /DISK1/WWW/....
aby minásledně trigger_error('chybka', E_USER_NECO)
nevracel chybu
Invalid error type specified in /DISK1/WWW/....
Zkoušel jsem to, nejde to ani přímo s číslem => IMHO nelze.
(nejspíš proto, že PHP k tý funkci hledá string popisku kterej dává před message (Error, Notice apod.))
Jedině snad si napsat vlastní funkci pro trigger error, která nejdřív např. zaokrouhlí číslo chyby na nejbližší který php umí a pak zavolá původní trigger error (anebo zpracuje chybu sama a sama si zavolá error handler).
Nebo používat výjimky.
(nejspíš proto, že PHP k tý funkci hledá string popisku kterej dává před message (Error, Notice apod.))
Jedině snad si napsat vlastní funkci pro trigger error, která nejdřív např. zaokrouhlí číslo chyby na nejbližší který php umí a pak zavolá původní trigger error (anebo zpracuje chybu sama a sama si zavolá error handler).
Nebo používat výjimky.
zaokrouhlit na jiný existující typ chyby mi to nepomůže, protože právě se od nich potřebuji odlišit
používat vyjímky taky ne... protože právě ty bývají tím co vyvolá trigger_error
aby se spustil můj vlastní set_error_handler... který už pak dokáže reágovat na vzniklé problémy a ošetřit je... nemůžu např. při mém E_USER_MYSQL chtít po mysql třídě aby řešila závislosti vynesených hlaviček, output bufferingu, cachování stránky, šablon atd.
no takže to budu muset řešit obezliškou zavolat trigger_error s E_USER_ERROR a do textu mu dát že jdet o E_USER_MYSQL či podobně
používat vyjímky taky ne... protože právě ty bývají tím co vyvolá trigger_error
aby se spustil můj vlastní set_error_handler... který už pak dokáže reágovat na vzniklé problémy a ošetřit je... nemůžu např. při mém E_USER_MYSQL chtít po mysql třídě aby řešila závislosti vynesených hlaviček, output bufferingu, cachování stránky, šablon atd.
no takže to budu muset řešit obezliškou zavolat trigger_error s E_USER_ERROR a do textu mu dát že jdet o E_USER_MYSQL či podobně