The track_errors parameter is PHP_INI_ALL, so you can use code like this:
<?php
ini_set('track_errors', 1);
$result = @do_risky_thing();
if (! $result) {
echo '<p>Error' . htmlspecialchars($php_errormsg) . '</p>';
}
ini_set('track_errors', 0);
?>
$php_errormsg
(PHP 4, PHP 5)
$php_errormsg — El último mensaje de error
Descripción
$php_errormsg es una variable que contiene el texto del último mensaje de error generado por PHP. Esta variable solo está disponible en el entorno en donde el error ocurrió y solamente funcionará si la opción de configuración track_errors está activada on (por defecto es off).
Nota: Esta variable solamente está disponible cuando la directiva track_errors está activada en el php.ini.
Advertencia
Si el usuario ha definido un controlador de errores (set_error_handler()),
$php_errormsg tendrá un valor solamente si el controlador de errores
devuelve FALSE
Ejemplos
Ejemplo #1 Ejemplo de $php_errormsg
<?php
@strpos();
echo $php_errormsg;
?>
El resultado del ejemplo sería algo similar a:
Wrong parameter count for strpos()
josh at karmabunny dot com dot au
04-Jul-2011 12:41
ryan kulla
19-Jan-2009 11:32
Note: This variable doesn't seem to get populated if you're running Xdebug.
