Cum activezi afișarea erorilor în PHP pentru depanare (error reporting)

Atunci când lucrezi la dezvoltarea sau depanarea unui website, ai nevoie să identifici rapid posibilele bug-uri și erori din cod. Multe servicii de găzduire web dezactivează în mod implicit afișarea avertismentelor și a erorilor PHP din considerente de securitate, ceea ce poate duce la afișarea unei pagini albe („White Screen of Death”) fără detalii utile.

Cum poți forța afișarea tuturor erorilor PHP în mediul de dezvoltare pentru a depana eficient scriptul?

Utilizarea funcției native error_reporting()

PHP pune la dispoziție funcția error_reporting(), prin care poți stabili nivelul de severitate al erorilor raportate. La începutul fișierului PHP sau în fișierul principal de configurare, poți utiliza una dintre următoarele opțiuni în funcție de nivelul de detaliu dorit:

  • error_reporting(E_ERROR | E_WARNING | E_PARSE); – afișează erorile fatale, avertismentele (warnings) și erorile de sintaxă/parsare a codului;
  • error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE); – afișează erorile de funcționare împreună cu notificările (notices);
  • error_reporting(E_ALL ^ E_NOTICE); – raportează toate erorile, cu excepția notificărilor minore;
  • error_reporting(E_ALL); – activează raportarea tuturor erorilor, avertismentelor și recomandărilor (standardul recomandat în dezvoltare).

Activarea parametrului display_errors

Dacă serverul de hosting are directiva display_errors dezactivată în php.ini, simpla apelare a funcției error_reporting() nu va afișa mesajele pe ecran. În acest caz, trebuie să forțezi afișarea prin funcția ini_set():

[php]
// Activează raportarea tuturor erorilor
error_reporting(E_ALL);

// Forțează afișarea lor în browser
ini_set(‘display_errors’, ‘1’);
ini_set(‘display_startup_errors’, ‘1’);
[/php]

Adăugând aceste linii la începutul scriptului sau în fișierul general de configurare (cum ar fi config.php), vei putea vizualiza toate detaliile tehnice necesare pentru a remedia problemele din cod.

1 comentariu

Lasă un comentariu