Ciao.
Ho provato questo codice preso da un manuale, come semplice esempio di gestione errori:
function handler($error_type, $error_message, $error_file, $error_line) {
switch($error_type) {
case E_ERROR:
echo "<h1>Errore fatale</h1>";
die ("ATTENZIONE!: un errore fatale si e' verificato alla riga $error_line del file $error_file
Il messaggio di errore è il seguente: "$error_message"");
break;
case E_WARNING:
echo "<h1>ATTENZIONE!</h1>";
die ("Errore di tipo WARNING alla riga $error_line del file $error_file
Il messaggio di errore e' il seguente: "$error_message"");
break;
case E_NOTICE:
// niente da dire
break;
}
}
set_error_handler("handler");
//segue altro codice...
Il problema è che se genero un errore di tipo warning funziona, ma se genero un fatal error (es. richiamo una funzione che non esiste) l'avviso viene visualizzato ignorando la funzione handler...
Sapete dirmi perché? Dipende dal php.ini o da Apache?
Grazie.![]()