Hiba kezelése
A fenti értékeket (numerikus vagy szimbolikus) egy bitmaszk létrehozására használják, amely meghatározza a hibaüzenet kimenetét. A hibák bizonyos típusainak maszkolásához bitenkénti műveleteket használhat. Ne feledje, hogy csak a "|", "
','! ' és a "" kifejezést a php.ini-ben kell érteni, és a bit-műveleteket nem fogják megérteni a php3.ini fájlban.
A PHP 4-ben az error_reporting alapértelmezett értéke E_ALL
E_NOTICE. ami azt jelenti, hogy minden olyan hibát és figyelmeztetést jelenít meg, amelyek nem rendelkeznek az E_NOTICE szinttel. A PHP 3-ban az alapértelmezett érték (E_ERROR | E_WARNING | E_PARSE) ugyanazt jelenti. Ne feledje azonban, hogy mivel a konstansok nem támogatottak a PHP 3-ban a php3.ini fájlban. a hibajelentés beállítását számokkal kell végrehajtani; azaz alapértelmezés szerint 7.
A kezdeti érték az ini fájlban megváltoztatható a error_reporting direktíva szerint. az Apache httpd.conf irányelv -File php_error_reporting (php3_error_reporting PHP 3), és végül, be lehet állítani a színpadon az error_reporting () függvény script fut.
Amikor frissít kód vagy szerver PHP 3-ról PHP 4 érdemes megnézni ezeket a beállításokat és az error_reporting (), illetve letilthatja a kimenő üzenetet küld az új típusú hibák, különösen E_COMPILE_ERROR. Ez az üres dokumentumok megjelenéséhez vezethet, anélkül, hogy jelezné a probléma okait és helyét.
Az összes PHP kifejezést a "@" előtagmal is meg lehet hívni, ami letiltja az adott kifejezés hibaüzenetét. Ha a hiba az ilyen kifejezés kiértékelésekor és a track_errors engedélyezve van, hibaüzenet jelenhet meg a $ php_errormsg globális változónál.
Megjegyzés: A @ error-control-operation előtag nem tiltja le a hibák értelmezéséből eredő üzenetek kimenetét.
Jelenleg a @ error-control-operation előtag letiltja azokat a kritikus hibaüzeneteket is, amelyek megszakítják a parancsfájl végrehajtását. Többek között, ez azt jelenti, hogy ha Ön @ elnyomni a hibák egy bizonyos funkció nem elérhető, vagy helytelenül írt, a szkript fedezi ok nélkül.
15-1. Hiba történt a szkriptekben