PHP හි JSON විග්‍රහයේදී පාර්සර් දෝෂ

json_last_error ශ්‍රිතය භාවිතයෙන්, JSON පාර්ස් කිරීමේදී සිදු වූ නිශ්චිත දෝෂය හඳුනා ගත හැකිය. අපි එය කරන්නේ කෙසේදැයි බලමු. අපට නිවැරදි නොවන 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 විග්‍රහ කළ නොහැකි වූයේ නම් එහි හේතුව නිකුත් කරන්න.