Parserfejl ved parsing af JSON i PHP

Ved hjælp af funktionen json_last_error kan man finde ud af, hvilken specifik fejl der opstod under parsing af JSON. Lad os se, hvordan det gøres. Lad os antage, at vi har ugyldig JSON:

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

Lad os prøve at parse den:

php<?php
  $data = json_decode($json);
  var_dump($data); // vil udskrive null
?>

Da der opstod en fejl, vil json_last_error ved kald returnere nummeret på denne fejl:

php<?php
  $error = json_last_error();
  var_dump($error); // fejlnummer
?>

Det returnerede nummer kan sammenlignes med specielle PHP-konstanter. På baggrund af dette kan man skrive kode, der fanger forskellige fejltyper:

php<?php
   switch (json_last_error()) {
    case JSON_ERROR_NONE:
      echo 'ingen fejl';
    break;
    case JSON_ERROR_DEPTH:
      echo 'maksimal stakdybde er nået';
    break;
    case JSON_ERROR_STATE_MISMATCH:
      echo 'ugyldige bits eller modus-uoverensstemmelse';
    break;
    case JSON_ERROR_CTRL_CHAR:
      echo 'ugyldigt kontroltegn';
    break;
    case JSON_ERROR_SYNTAX:
      echo 'syntaksfejl, ugyldig JSON';
    break;
    case JSON_ERROR_UTF8:
      echo 'ugyldige UTF-8-tegn, muligvis forkert kodet';
    break;
    default:
      echo 'ukendt fejl';
    break;
  }
?>
Задание 1

Der gives en streng med noget JSON. Pars den til en PHP-datastruktur. Udskriv resultatet af parsing eller årsagen til fejlen, hvis det ikke lykkedes at parse JSON.