PHP Notice zachytávat jako exception
- mcmatak
- Člen | 505
[2013–12–16 09–03–50] PHP Notice: Unknown: Unexpected characters at
end of address: ;
b=P4kAEjvXPvSvrV0n4dtVscukRbD8E3hfNXMrVG+zU3vzac16UnK//ftrJ2aWq4B7J
NE9ZP (errflg=3) in Unknown:0 @
jak by jste debugovali tento notice? tezko rict k cemu to patri a co to vubec je, exception se nevytvari, proc tohle nette neprevadi do exception?
- David Grudl
- Nette Core | 8282
(Stihl jsem ten předchozí komentář smazat).
Neříkám, že to nechci, nakonec to hodně často používám, jen si nejsem jist, jestli to dát do frameworku kvůli přenositelnosti kódu. Takže to spíš „obcházím“ třídami jako je FileSystem.
- David Grudl
- Nette Core | 8282
Aby to neobcházelo Debugger, je třeba místo return FALSE
zavolat Debugger::_errorHandler(...)
.
- David Grudl
- Nette Core | 8282
Nicméně Debugger by mohl umět převádět chyby na výjimky, jen by to
standardně nebylo aktivní. Do proměnné by se nastavila maska chyb (např.
E_ALL
), které se mají převádět na výjimky ErrorException.
Přemýšlím jen, jak tu proměnnou nazvat…
- Jan Tvrdík
- Nette guru | 2595
Akorát mi připadá trochu hloupé, že dost zásadní chování bude záviset na debuggeru, který se tváří jako bezproblému vypnutelná část.
- David Grudl
- Nette Core | 8282
Jak se to vezme. Pokud nebudeš ErrorException zachytávat, chování se nezmění, jen aplikace rovnou padne. To mi připadá v CLI aplikacích jako ideální stav (a ve webových jako zcela nevhodný).
Pokud je zachytávat budeš, změníš tím paradigma, nicméně nepůjde ani tak o závislost na Debuggeru, jako spíš o závislost na jednoduchém handleru.
- mcmatak
- Člen | 505
Zdá se, že toto ani zachytit nelze?
https://bugs.php.net/bug.php?…
možná to není ani tak problém nette, ale konkrétně tento notice se zdá snad nezachytitelný
http://objectmix.com/…ine-0-a.html
tato fce
@imap_rfc822_parse_adrlist()
prostě vyhodí notice a ztišit ani odchytit to nejde? je to tak?
ale možná sem ten errorhandler nastavil blbě