⊗ppSpJnPE 20 of 83 menu

Chyby parseru při analýze JSON v PHP

Pomocí funkce json_last_error lze zjistit, jaká konkrétní chyba nastala při parsování JSON. Podívejme se, jak se to dělá. Předpokládejme, že máme neplatný JSON:

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

Zkusme jej analyzovat:

<?php $data = json_decode($json); var_dump($data); // vypíše null ?>

Protože došlo k chybě, json_last_error při volání vrátí číslo této chyby:

<?php $error = json_last_error(); var_dump($error); // číslo chyby ?>

Vrácené číslo lze porovnávat se speciálními konstantami PHP. Na základě toho lze napsat kód, který zachytává různé typy chyb:

<?php switch (json_last_error()) { case JSON_ERROR_NONE: echo 'žádné chyby'; break; case JSON_ERROR_DEPTH: echo 'byla dosažena maximální hloubka zásobníku'; break; case JSON_ERROR_STATE_MISMATCH: echo 'neplatné bity nebo nesoulad režimů'; break; case JSON_ERROR_CTRL_CHAR: echo 'neplatný řídicí znak'; break; case JSON_ERROR_SYNTAX: echo 'syntaktická chyba, neplatný JSON'; break; case JSON_ERROR_UTF8: echo 'neplatné znaky UTF-8, pravděpodobně chybně zakódováno'; break; default: echo 'neznámá chyba'; break; } ?>

Je dáno řetězec s nějakým JSON. Analyzujte jej do struktury dat PHP. Vypište výsledek analýzy nebo důvod chyby, pokud se analyzovat JSON nepodařilo.

Čeština
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Používáme soubory cookie pro fungování webu, analýzu a personalizaci. Zpracování údajů probíhá v souladu s Zásadami ochrany osobních údajů.
přijmout vše přizpůsobit odmítnout