Autor | Zpráva | ||
---|---|---|---|
error414- Profil * |
#1 · Zasláno: 27. 3. 2010, 15:56:39
Nikde sem nenasel jak se chova Trida DateTime.
kdyz zadam new DateTime('02--'); tak to vyhodi vyjimku, ale pokud v kodu nekde pouziju set_error_handler('my'); tak se me zavola tento errorHandler takze kdyz mam v kodu try{ new DateTime('00--'); }catch(Exception $e){ // ostreni } tak to po nastaveni errorhadleru vubec nefunguje |
||
Majkl578 Profil |
#2 · Zasláno: 28. 3. 2010, 13:33:45
Vyhazuje výjimku při chybě.
Možná jsem úplně nepochopil problém, při nastavení error handleru nefunguje ten try block? set_error_handler(function() { var_dump(func_get_args()); }); try{ new DateTime('00--'); } catch(Exception $e) { } echo $foo; |
||
error414- Profil * |
#3 · Zasláno: 28. 3. 2010, 14:18:18
Majkl578:
presne tak, nefunguje try blok. //set_error_handler('my'); function my(){ var_dump('error datetime'); } try{ new DateTime('00--'); var_dump('Po datumu'); }catch(Exception $e){ var_dump('osetreni vyjimky datumu'); } vypise osetreni vyjimky datumu ale kdyz odkomentuju error handler set_error_handler('my'); function my(){ var_dump('error datetime'); } try{ new DateTime('00--'); var_dump('Po datumu'); }catch(Exception $e){ var_dump('osetreni vyjimky datumu'); } vypise error datetime Po datumu Coz je uplne jine rizeni programu. Pokud chybu resim v try catch bloku a misto toho se me zavola error handler tak to cela aplikace zacne chovat jinak. Nikde v manualu jsem nenasel jak se to ma chovat. |
||
Majkl578 Profil |
#4 · Zasláno: 28. 3. 2010, 14:37:26
Asi se jedná o nějaký bug v tvé verzi PHP. Na 5.3.2 se to v obou případech chová dle očekávání.
Jakou máš verzi? |
||
error414- Profil * |
#5 · Zasláno: 29. 3. 2010, 07:50:57
5.2.11 tak to je parada pokud to zmenili. V komentarich k funkci set_error_handler jsem nasel zminku ze to nema byt bug ale fucura
|
||
Časová prodleva: 14 let
|
0