PHP set_error_handler() 函数
实例
通过 set_error_handler() 函数设置用户自定义的错误处理程序,然后触发错误(通过 trigger_error()):
<?php
// 用户定义的错误处理函数
function myErrorHandler($errno, $errstr, $errfile, $errline) {
echo "<b>Custom error:</b> [$errno] $errstr<br>";
echo " Error on line $errline in $errfile<br>";
}
// 设置用户定义的错误处理函数
set_error_handler("myErrorHandler");
$test=2;
// Attivazione dell'errore
if ($test>1) {
trigger_error("Un errore personalizzato è stato attivato");
}
?>
L'output del codice sopra è simile a questo:
Errore personalizzato: [1024] È stato attivato un errore personalizzato Errore alla riga 14 in C:\webfolder\test.php
Definizione e uso
La funzione set_error_handler() imposta il gestore degli errori definito dall'utente.
Commento:Se si utilizza questa funzione, si bypassa il gestore degli errori standard PHP e, se necessario, il programma di errore definito dall'utente termina lo script tramite die().
Commento:Se l'errore si verifica prima dell'esecuzione dello script (ad esempio durante l'upload dei file), il gestore degli errori personalizzato non verrà chiamato perché non è stato registrato in quel momento.
Sintassi
set_error_handler(errorhandler,E_ALL|E_STRICT);
| Parametri | Descrizione |
|---|---|
| errorhandler | Obbligatorio. Specifica il nome della funzione di gestione degli errori utente. |
| E_ALL|E_STRICT | Facoltativo. Specifica quale livello di report di errore utente definire. Di default è "E_ALL". |
Dettagli tecnici
| Valore di ritorno: | Stringa che contiene il gestore degli errori definito in precedenza. |
|---|---|
| Versione PHP: | 4.0.1+ |
| Log delle aggiornamenti PHP: |
PHP 5.5: Parametri errorhandler Ora accetta NULL PHP 5.2: Il gestore degli errori deve restituire FALSE per visualizzare $php_errormsg. |

