⊗ppSpJnPE 20 of 83 menu

Errores del analizador sintáctico al analizar JSON en PHP

Con la función json_last_error se puede saber qué error exactamente ocurrió durante el análisis de JSON. Veamos cómo se hace esto. Supongamos que tenemos un JSON incorrecto:

<?php $json = '["a", "b", "c",]'; ?>

Intentemos analizarlo:

<?php $data = json_decode($json); var_dump($data); // mostrará null ?>

Como ocurrió un error, entonces json_last_error al llamarla devolverá el número de este error:

<?php $error = json_last_error(); var_dump($error); // número del error ?>

El número devuelto se puede comparar con constantes especiales de PHP. Basándose en esto, se puede escribir código que capture varios tipos de errores:

<?php switch (json_last_error()) { case JSON_ERROR_NONE: echo 'no hay errores'; break; case JSON_ERROR_DEPTH: echo 'se alcanzó la profundidad máxima de la pila'; break; case JSON_ERROR_STATE_MISMATCH: echo 'bits incorrectos o discrepancia de modos'; break; case JSON_ERROR_CTRL_CHAR: echo 'carácter de control incorrecto'; break; case JSON_ERROR_SYNTAX: echo 'error de sintaxis, JSON incorrecto'; break; case JSON_ERROR_UTF8: echo 'caracteres UTF-8 incorrectos, posiblemente codificados incorrectamente'; break; default: echo 'error desconocido'; break; } ?>

Se da una cadena con cierto JSON. Analícela en una estructura de datos de PHP. Muestre el resultado del análisis o la razón del error, si no se pudo analizar el JSON.

Español
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Usamos cookies para el funcionamiento del sitio, análisis y personalización. El procesamiento de datos se realiza de acuerdo con la Política de privacidad.
aceptar todas configurar rechazar