Parserfeil ved analyse av JSON i PHP

Ved hjelp av funksjonen json_last_error kan man finne ut nøyaktig hvilken feil som oppstod under parsing av JSON. La oss se hvordan dette gjøres. La oss si at vi har en ugyldig JSON:

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

La oss prøve å parse den:

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

Siden det oppstod en feil, vil json_last_error ved kall returnere nummeret på denne feilen:

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

Returnert nummer kan sammenlignes med spesielle PHP-konstanter. Basert på dette kan man skrive kode som fanger opp ulike feiltyper:

php<?php
   switch (json_last_error()) {
    case JSON_ERROR_NONE:
      echo 'ingen feil';
    break;
    case JSON_ERROR_DEPTH:
      echo 'maksimal stakkdybde er nådd';
    break;
    case JSON_ERROR_STATE_MISMATCH:
      echo 'ugyldige bits eller modusavvik';
    break;
    case JSON_ERROR_CTRL_CHAR:
      echo 'ugyldig kontrolltegn';
    break;
    case JSON_ERROR_SYNTAX:
      echo 'syntaksfeil, ugyldig JSON';
    break;
    case JSON_ERROR_UTF8:
      echo 'ugyldige UTF-8-tegn, kanskje feil kodet';
    break;
    default:
      echo 'ukjent feil';
    break;
  }
?>
Задание 1

Gitt en streng med noe JSON. Analyser den til en PHP-datastruktur. Vis resultatet av analysen eller årsaken til feilen hvis det ikke lykkes å parse JSON.