Valorile de mai sus (numerice sau simbolice) sunt folosite pentru a construi o mască bit care specifică ieșirea mesajului de eroare. Puteți utiliza operații bitwise pentru a masca anumite tipuri de erori. Rețineți că doar "|",
","! " și "va fi înțeles în php.ini și că nici o operație bit nu va fi înțeleasă în php3.ini.
În PHP 4, valoarea implicită pentru eroarea de raport este E_ALL
E_NOTICE. ceea ce înseamnă afișarea tuturor erorilor și avertismentelor care nu au nivelul de E_NOTICE. În PHP 3, valoarea implicită (E_ERROR | E_WARNING | E_PARSE) înseamnă aceeași. Rețineți însă că, deoarece constantele nu sunt acceptate în PHP 3 în fișierul php3.ini. setarea de eroare trebuie să fie efectuată prin numere; care este, în mod implicit, 7.
Valoarea inițială poate fi modificată în .ini fișier Directiva error_reporting. în Apache httpd.conf Directiva -File php_error_reporting dvs. (php3_error_reporting pentru PHP 3) și, în cele din urmă, acesta poate fi setat stadializarea error_reporting () script funcția pe termen.
Când actualizați codul sau serverele de la PHP 3 la PHP 4, trebuie să verificați aceste setări și apelurile error_reporting () sau să dezactivați ieșirea mesajelor despre noi tipuri de erori, în special despre E_COMPILE_ERROR. Acest lucru poate duce la apariția de documente goale fără nici o indicație a cauzei și a localizării problemei.
Toate expresiile PHP pot fi de asemenea apelate cu prefixul "@", care dezactivează mesajele de eroare pentru această expresie. Dacă eroarea apare în timpul evaluării unei astfel de expresii și track_errors este activată, puteți găsi un mesaj de eroare în variabila globală $ php_errormsg.
Notă: Prefixul de eroare de control @ nu dezactivează ieșirea mesajelor care sunt rezultatul erorilor de parsing.
În prezent, prefixul de operare @ de eroare-control dezactivează chiar mesaje critice de eroare care întrerup execuția de script. Printre altele, aceasta înseamnă că dacă utilizați @ pentru a suprima erorile de la o anumită funcție și nu este inaccesibilă sau scrisă incorect, scriptul va fi acoperit fără a specifica un motiv.
Exemplul 15-1. Eroare de manipulare în scripturi