Chyby parsera pri analýze JSON v PHP

Pomocou funkcie json_last_error môžete zistiť, aká konkrétna chyba nastala počas parsovania JSON. Pozrime sa, ako sa to robí. Predpokladajme, že máme nekorektný JSON:

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

Skúsme ho analyzovať:

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

Keďže nastala chyba, json_last_error pri volaní vráti číslo tejto chyby:

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

Vrátené číslo je možné porovnávať so špeciálnymi konštantami PHP. Na základe toho je možné napísať kód, ktorý zachytáva rôzne typy chýb:

php<?php
   switch (json_last_error()) {
    case JSON_ERROR_NONE:
      echo 'žiadne chyby';
    break;
    case JSON_ERROR_DEPTH:
      echo 'dosiahnutá maximálna hĺbka zásobníka';
    break;
    case JSON_ERROR_STATE_MISMATCH:
      echo 'nekorektné bity alebo nezhoda režimov';
    break;
    case JSON_ERROR_CTRL_CHAR:
      echo 'nekorektný riadiaci znak';
    break;
    case JSON_ERROR_SYNTAX:
      echo 'syntaktická chyba, nekorektný JSON';
    break;
    case JSON_ERROR_UTF8:
      echo 'nekorektné znaky UTF-8, pravdepodobne nesprávne zakódované';
    break;
    default:
      echo 'neznáma chyba';
    break;
  }
?>
Задание 1

Daný reťazec s nejakým JSON. Analyzujte ho do dátovej štruktúry PHP. Vypíšte výsledok analýzy alebo dôvod chyby, ak sa analyzovať JSON nepodarilo.