JSON elemzési hibák a PHP-ban

A json_last_error függvény segítségével megtudhatjuk, hogy pontosan milyen hiba történt a JSON elemzése során. Nézzük meg, hogyan kell ezt megtenni. Tegyük fel, hogy van egy helytelen JSON-unk:

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

Próbáljuk meg elemezni:

php<?php
  $data = json_decode($json);
  var_dump($data); // kiírja null-t
?>

Mivel hiba történt, a json_last_error hívásakor kiadja a hiba számát:

php<?php
  $error = json_last_error();
  var_dump($error); // hiba száma
?>

A visszaadott számot össze lehet hasonlítani PHP speciális konstansaival. Ennek alapján írhatunk olyan kódot, amely elkapja a különböző típusú hibákat:

php<?php
   switch (json_last_error()) {
    case JSON_ERROR_NONE:
      echo 'nincsenek hibák';
    break;
    case JSON_ERROR_DEPTH:
      echo 'elérte a verem maximális mélységét';
    break;
    case JSON_ERROR_STATE_MISMATCH:
      echo 'helytelen bitek vagy mód eltérés';
    break;
    case JSON_ERROR_CTRL_CHAR:
      echo 'érvénytelen vezérlőkarakter';
    break;
    case JSON_ERROR_SYNTAX:
      echo 'szintaktikai hiba, érvénytelen JSON';
    break;
    case JSON_ERROR_UTF8:
      echo 'érvénytelen UTF-8 karakterek, esetleg helytelenül kódolt';
    break;
    default:
      echo 'ismeretlen hiba';
    break;
  }
?>
Задание 1

Adott egy string valamilyen JSON-nel. Elemezd azt PHP adatszerkezetté. Írd ki az elemzés eredményét vagy a hiba okát, ha a JSON elemzése sikertelen volt.