Estoy dando el gran salto: ¡mis scripts de PHP fallarán todos!set_error_handler No funciona Cómo quiero que funcione
Al menos, eso es lo que estoy esperando ...
no quiero envolver (prácticamente) cada línea en declaraciones try ... catch, así que creo que mi mejor apuesta es crear un controlador de error personalizado para el comienzo de mis archivos.
estoy prueba a cabo en una página de la práctica:
function customError($level,$message,$file,$line,$context) {
echo "Sorry, an error has occured on line $line.<br />";
echo "The function that caused the error says $message.<br />";
die();
}
set_error_handler("customError");
echo($imAFakeVariable);
Esto funciona bien, volviendo:
Sorry, an error has occured on line 17. The function that caused the error says Undefined variable: imAFakeVariable.
Sin embargo, esta configuración no funciona para las funciones definidas.
function customError($level,$message,$file,$line,$context) {
echo "Sorry, an error has occured on line $line.<br />";
echo "The function that caused the error says $message.<br />";
die();
}
set_error_handler("customError");
imAFakeFunction();
Esto devuelve:
Fatal error: Call to undefined function: imafakefunction() in /Library/WebServer/Documents/experimental/errorhandle.php on line 17
¿Por qué no es mi manipulador personalizado poniendo al funciones definidas? ¿Hay otros problemas que esto cause?