Грешке парсера при парсирању JSON-a у PHP-у

Користећи функцију json_last_error можете сазнати која се тачно грешка десила при парсирању JSON-a. Хајде да погледамо како се то ради. Рецимо да имамо неисправан JSON:

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

Хајде да покушамо да га парсирамо:

php<?php
  $data = json_decode($json);
  var_dump($data); // исписаће null
?>

Пошто је дошло до грешке, json_last_error при позивању даће број те грешке:

php<?php
  $error = json_last_error();
  var_dump($error); // број грешке
?>

Добијени број можете упоређивати са специјалним константама у PHP-у. На основу тога можете написати код који хвата различите типове грешака:

php<?php
   switch (json_last_error()) {
    case JSON_ERROR_NONE:
      echo 'нема грешке';
    break;
    case JSON_ERROR_DEPTH:
      echo 'достигнута је максимална дубина стека';
    break;
    case JSON_ERROR_STATE_MISMATCH:
      echo 'неисправни битови или неусаглашеност режима';
    break;
    case JSON_ERROR_CTRL_CHAR:
      echo 'неисправан контролни знак';
    break;
    case JSON_ERROR_SYNTAX:
      echo 'синтаксна грешка, неисправан JSON';
    break;
    case JSON_ERROR_UTF8:
      echo 'неисправни UTF-8 знакови, могуће погрешно кодирани';
    break;
    default:
      echo 'непозната грешка';
    break;
  }
?>
Задание 1

Дати су стринг са неким JSON-ом. Парсирајте га у структуру података PHP-а. Испишите резултат парсирања или разлог грешке ако парсирање JSON-a није успело.