(PHP 5 >= 5.3.0)
json_last_error — Gibt den letzten aufgetretenen Fehler zurück
Gibt (sofern vorhanden) den letzten Fehler zurück, der beim letzten Parsen von JSON aufgetreten ist.
Diese Funktion hat keine Parameter.
Gibt einen Integer zurück, der Wert kann eine der folgenden Konstanten sein:
Konstante | Bedeutung |
---|---|
JSON_ERROR_NONE |
Kein Fehler aufgetreten. |
JSON_ERROR_DEPTH |
Die maximale Stacktiefe wurde überschritten. |
JSON_ERROR_CTRL_CHAR |
Steuerzeichenfehler, möglicherweise unkorrekt kodiert. |
JSON_ERROR_SYNTAX |
Syntaxfehler. |
Beispiel #1 json_last_error()-Beispiel
<?php
// Ein gültiger JSON-String
$json[] = '{"Organisation": "PHP-Dokumentationsteam"}';
// Ein ungültiger JSON-String, der einen Syntaxfehler hervorruft,
// in diesem Fall werden ' anstelle von " als Anführungszeichen verwendet
$json[] = "{'Organisation': 'PHP-Dokumentationsteam'}";
foreach($json as $string)
{
echo 'Dekodiere: ' . $string;
json_decode($string);
switch(json_last_error())
{
case JSON_ERROR_DEPTH:
echo ' - Maximale Stacktiefe überschritten';
break;
case JSON_ERROR_CTRL_CHAR:
echo ' - Unerwartetes Steuerzeichen gefunden';
break;
case JSON_ERROR_SYNTAX:
echo ' - Syntaxfehler, ungültiges JSON';
break;
case JSON_ERROR_NONE:
echo ' - Keine Fehler';
break;
}
echo PHP_EOL;
}
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
Decoding: {"Organisation": "PHP-Dokumentationsteam"} - Keine Fehler Decoding: {'Organisation': 'PHP-Dokumentationsteam'} - Syntaxfehler, ungültiges JSON