Constante predefinite
Constantele de mai jos sunt definite de această extensie și vor fi disponibile
doar dacă această extensie a fost compilată în interiorul PHP, sau a fost
încărcată dinamic în timpul rulării.
Următoarele constante indică tipul erorii întoarse de funcția
json_last_error() sau stocate în atributul
code al obiectului JsonException.
-
JSON_ERROR_NONE
(int)
-
Nu s-a produs vre-o eroare.
Disponibilă începând cu PHP 5.3.0.
-
JSON_ERROR_DEPTH
(int)
-
A fost depășită adâncimea maximă a stivei.
Disponibilă începând cu PHP 5.3.0.
-
JSON_ERROR_STATE_MISMATCH
(int)
-
Are loc în cazul unei valori ce depășește limita de jos, sau când modurile
nu coincid.
Disponibilă începând cu PHP 5.3.0.
-
JSON_ERROR_CTRL_CHAR
(int)
-
Eroare în caracterul de control, posibil a fost codificat greșit.
Disponibilă începând cu PHP 5.3.0.
-
JSON_ERROR_SYNTAX
(int)
-
Eroare în sintaxă.
Disponibilă începând cu PHP 5.3.0.
-
JSON_ERROR_UTF8
(int)
-
Caractere UTF-8 eronate, posibil codificate incorect.
Disponibilă începând cu PHP 5.3.3.
-
JSON_ERROR_RECURSION
(int)
-
Obiectul sau tabloul transmis funcției json_encode()
include referințe recursive și de aceea nu pot fi codificate.
Dacă a fost indicată opțiunea
JSON_PARTIAL_OUTPUT_ON_ERROR
,
în locul referințelor recursive va fi codificat null
.
Disponibilă începând cu PHP 5.5.0.
-
JSON_ERROR_INF_OR_NAN
(int)
-
Valoarea transmisă funcției json_encode() include
NAN
sau INF
.
Dacă a fost indicată opțiunea JSON_PARTIAL_OUTPUT_ON_ERROR
,
în locul acestor numere speciale va fi codificat 0
.
Disponibilă începând cu PHP 5.5.0.
-
JSON_ERROR_UNSUPPORTED_TYPE
(int)
-
O valoare de tip nesusținut a fost transmisă funcției
json_encode(), cum ar fi o resource.
Dacă a fost indicată opțiunea
JSON_PARTIAL_OUTPUT_ON_ERROR
,
în locul valorii nesusținute va fi codificat null
.
Disponibilă începând cu PHP 5.5.0.
-
JSON_ERROR_INVALID_PROPERTY_NAME
(int)
-
În șirul de caractere transmis funcției json_decode() a
fost găsită o cheie ce începe cu caracterul \u0000, la decodificarea unui
obiect JSON într-un obiect PHP.
Disponibilă începând cu PHP 7.0.0.
-
JSON_ERROR_UTF16
(int)
-
În șirul JSON transmis către json_decode() a fost găsit
un surogat UTF-16 singur, fără pereche.
Disponibilă începând cu PHP 7.0.0.
Următoarele constante pot fi combinate pentru a forma opțiuni pentru
json_decode().
-
JSON_BIGINT_AS_STRING
(int)
-
Decodifică numere întregi mari ca șiruri de caractere cu valoarea lor originală.
Disponibilă începând cu PHP 5.4.0.
-
JSON_OBJECT_AS_ARRAY
(int)
-
Decodifică obiecte JSON ca tablouri PHP. Această opțiune poate fi adăugată
automat apelând json_decode() cu al doilea parametru egal
cu
true
.
Disponibilă începând cu PHP 5.4.0.
Următoarele constante pot fi combinate pentru a forma opțiuni pentru
json_encode().
-
JSON_HEX_TAG
(int)
-
Toate < și > sunt convertite în \u003C și \u003E.
Disponibilă începând cu PHP 5.3.0.
-
JSON_HEX_AMP
(int)
-
Toate & sunt convertite în \u0026.
Disponibilă începând cu PHP 5.3.0.
-
JSON_HEX_APOS
(int)
-
Toate ' sunt convertite în \u0027.
Disponibilă începând cu PHP 5.3.0.
-
JSON_HEX_QUOT
(int)
-
Toate " sunt convertite în \u0022.
Disponibilă începând cu PHP 5.3.0.
-
JSON_FORCE_OBJECT
(int)
-
Întoarce un obiect în loc de tablou când este utilizat un tablou
non-associativ. Util în special când receptorul rezultatului se așteaptă la
un obiect, iar tabloul este vid.
Disponibilă începând cu PHP 5.3.0.
-
JSON_NUMERIC_CHECK
(int)
-
Codifică șiruri numerice ca numere.
Disponibilă începând cu PHP 5.3.3.
-
JSON_PRETTY_PRINT
(int)
-
Folosește spații în datele întoarse pentru a le formata.
Disponibilă începând cu PHP 5.4.0.
-
JSON_UNESCAPED_SLASHES
(int)
-
Nu evadează caracterele
/
.
Disponibilă începând cu PHP 5.4.0.
-
JSON_UNESCAPED_UNICODE
(int)
-
Codifică caracterele Unicode pe mai mulți baiți așa cum sunt (implicit se
efectuează evadarea de tip \uXXXX).
Disponibilă începând cu PHP 5.4.0.
-
JSON_PARTIAL_OUTPUT_ON_ERROR
(int)
-
Substituie unele valori ce nu pot fi codificate, în loc să eșueze.
Disponibilă începând cu PHP 5.5.0.
-
JSON_PRESERVE_ZERO_FRACTION
(int)
-
Asigură ca valorile float să fie întotdeauna codificate ca valori float.
Disponibilă începând cu PHP 5.6.6.
-
JSON_UNESCAPED_LINE_TERMINATORS
(int)
-
Sfârșiturile liniilor sunt păstrate fără schimbare atunci când este indicată
JSON_UNESCAPED_UNICODE
. Ea are același comportament ca
și până la versiunea PHP 7.1 fără această constantă.
Disponibilă începând cu PHP 7.1.0.
Următoarele constante pot fi combinate pentru a forma opțiuni pentru
json_decode() și json_encode().
-
JSON_INVALID_UTF8_IGNORE
(int)
-
Ignorează caracterele UTF-8 nevalide.
Disponibilă începând cu PHP 7.2.0.
-
JSON_INVALID_UTF8_SUBSTITUTE
(int)
-
Convertește caracterele UTF-8 nevalide în \0xfffd
(Caracterul Unicode 'REPLACEMENT CHARACTER')
Disponibil începând cu PHP 7.2.0.
-
JSON_THROW_ON_ERROR
(int)
-
Emite JsonException dacă are loc o eroare în loc să seteze
starea de eroare globală care este obținută cu
json_last_error() și json_last_error_msg().
JSON_PARTIAL_OUTPUT_ON_ERROR
are precedență față de
JSON_THROW_ON_ERROR
.
Disponibilă începând cu PHP 7.3.0.