<?php
// Kodowanie danych.
$json = json_encode(
array(
1 => array(
'English' => array(
'One',
'January'
),
'Polish' => array(
'Jeden',
'Styczeń'
)
)
)
);
// Określ błędy.
$constants = get_defined_constants(true);
$json_errors = array();
foreach ($constants["json"] as $name => $value) {
if (!strncmp($name, "JSON_ERROR_", 11)) {
$json_errors[$value] = $name;
}
}
// Pokaż błędy na różych poziomach zagłębienia.
foreach (range(4, 3, -1) as $depth) {
var_dump(json_decode($json, true, $depth));
echo 'Last error: ', $json_errors[json_last_error()], PHP_EOL, PHP_EOL;
}
?>
Powyższy przykład wyświetli:
array(1) {
[1]=>
array(2) {
["English"]=>
array(2) {
[0]=>
string(3) "One"
[1]=>
string(7) "January"
}
["Polish"]=>
array(2) {
[0]=>
string(3) "Jeden"
[1]=>
string(7) "Styczeń"
}
}
}
Ostatni błąd: JSON_ERROR_NONE
NULL
Ostatni błąd: JSON_ERROR_DEPTH