JSON parsēšanas kļūdas PHP

Izmantojot funkciju json_last_error var uzzināt, kāda tieši kļūda radās, parsējot JSON. Paskatīsimies, kā to izdarīt. Pieņemsim, ka mums ir nekorekts JSON:

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

Mēģināsim to parsēt:

php<?php
  $data = json_decode($json);
  var_dump($data); // izvadīs null
?>

Tā kā radās kļūda, tad json_last_error izsaukšanas brīdī izvadīs šīs kļūdas numuru:

php<?php
  $error = json_last_error();
  var_dump($error); // kļūdas numurs
?>

Atgriezto numuru var salīdzināt ar speciālām PHP konstantēm. Pamatojoties uz to, var uzrakstīt kodu, kas notver dažāda veida kļūdas:

php<?php
   switch (json_last_error()) {
    case JSON_ERROR_NONE:
      echo 'nav kļūdu';
    break;
    case JSON_ERROR_DEPTH:
      echo 'sasniegts maksimālais kaudzes dziļums';
    break;
    case JSON_ERROR_STATE_MISMATCH:
      echo 'nekorekti biti vai režīmu neatbilstība';
    break;
    case JSON_ERROR_CTRL_CHAR:
      echo 'nekorekts vadības simbols';
    break;
    case JSON_ERROR_SYNTAX:
      echo 'sintakses kļūda, nekorekts JSON';
    break;
    case JSON_ERROR_UTF8:
      echo 'nekorekti UTF-8 simboli, iespējams, nepareizi kodēti';
    break;
    default:
      echo 'nezināma kļūda';
    break;
  }
?>
Задание 1

Dota virkne ar kādu JSON. Parsējiet to PHP datu struktūrā. Izvadiet parsēšanas rezultātu vai kļūdas iemeslu, ja JSON neizdevās parsēt.