<?php
// Una cadena JSON válida
$json[] = '{"Organisation": "Équipe de Documentation PHP"}';
// Una cadena json inválida que va a generar un error de sintaxis,
// aquí, uso de ' en lugar de "
$json[] = "{'Organisation': 'Équipe de Documentation PHP'}";
foreach ($json as $string) {
echo 'Decodificación: ' . $string;
json_decode($string);
switch (json_last_error()) {
case JSON_ERROR_NONE:
echo ' - Sin errores';
break;
case JSON_ERROR_DEPTH:
echo ' - Profundidad máxima alcanzada';
break;
case JSON_ERROR_STATE_MISMATCH:
echo ' - Inadecuación de modos o underflow';
break;
case JSON_ERROR_CTRL_CHAR:
echo ' - Error durante el control de caracteres';
break;
case JSON_ERROR_SYNTAX:
echo ' - Error de sintaxis; JSON malformado';
break;
case JSON_ERROR_UTF8:
echo ' - Caracteres UTF-8 malformados, probablemente un error de codificación';
break;
default:
echo ' - Error desconocido';
break;
}
echo PHP_EOL;
}
?>
El ejemplo anterior mostrará :
Decodificación: {"Organisation": "Équipe de Documentation PHP"} - Sin errores
Decodificación: {'Organisation': 'Équipe de Documentation PHP'} - Error de sintaxis; JSON malformado