Like $php_errormsg, the return value of this function may not be updated if a user-defined error handler returns non-FALSE. Tested on PHP 5.2.6.
<?php
var_dump(PHP_VERSION);
// Outputs: string(5) "5.2.6"
@trigger_error("foo");
$e=error_get_last();
var_dump($e['message']);
// Outputs: string(3) "foo"
set_error_handler(create_function('$a,$b',''));
@trigger_error("bar");
$e=error_get_last();
var_dump($e['message']);
// Outputs: string(3) "foo"
set_error_handler(create_function('$a,$b','return false;'));
@trigger_error("baz");
$e=error_get_last();
var_dump($e['message']);
// Outputs: string(3) "baz"
?>
error_get_last
(PHP 5 >= 5.2.0)
error_get_last — Liefert den zuletzt aufgetretenen Fehler
Beschreibung
array error_get_last
( void
)
Liefert Informationen über den zuletzt aufgetretenen Fehler
Rückgabewerte
Gibt ein assoziatives Array zurück das den zuletzt aufgetretenen Fehler mit den Elementen "type" (für die Art des Fehlers), "message" (für die Fehlermeldung) sowie "file" und "line" (für den Ort an dem der Fehler aufgetreten ist) beschreibt. Wenn bisher noch kein Fehler aufgetreten ist, wird NULL zurückgegeben.
Beispiele
Beispiel #1 error_get_last()-Beispiel
<?php
echo $a;
print_r(error_get_last());
?>
Das oben gezeigte Beispiel erzeugt eine ähnliche Ausgabe wie:
Array ( [type] => 8 [message] => Undefined variable: a [file] => C:\WWW\index.php [line] => 2 )
error_get_last
Brad
16-Jun-2008 11:54
16-Jun-2008 11:54
Brad
16-Jun-2008 11:36
16-Jun-2008 11:36
It can't be completely reset, but you can "clear" it well enough for all practical purposes:
<?php
@trigger_error("");
// do stuff...
$e=error_get_last();
if($e['message']!==''){
// An error occurred
}
?>
mail at mbaierl dot com
04-Jun-2008 05:21
04-Jun-2008 05:21
This function is pretty useless, as it can not be reset, so there is no way to know if the error really happened on the line before this function call.
