json_last_error
funkcja
Zwraca kod błędu ostatniej operacji json_encode lub json_decode. Zwraca 0 (JSON_ERROR_NONE) gdy nie było błędu.
json_last_error(): int
json_last_error zwraca kod ostatniego błędu JSON jako liczbę całkowitą. Wartość 0 oznacza brak błędu (JSON_ERROR_NONE), a 4 — błąd składni (JSON_ERROR_SYNTAX). Funkcja przydaje się gdy chcesz sprawdzić przyczynę niepowodzenia json_decode lub json_encode bez odczytywania komunikatu tekstowego. W PHP 8.3+ rozważ zamiast tego json_validate do samej walidacji.
<?php
declare(strict_types=1);
json_decode('{"a":1}');
var_dump(json_last_error()); // wynik: int(0)
json_decode('{bad}');
var_dump(json_last_error()); // wynik: int(4)
if (json_last_error() !== JSON_ERROR_NONE) {
echo 'Błąd JSON: ' . json_last_error_msg();
}
// wynik: Błąd JSON: Syntax error