SunshinePHP Developer Conference 2015

Constantes pré-définies

Ces constantes sont définies par cette extension, et ne sont disponibles que si cette extension a été compilée avec PHP, ou bien chargée au moment de l'exécution.

Les constantes suivantes indiquent le type d'erreur retournée par la fonction json_last_error().

JSON_ERROR_NONE (entier)
Aucune erreur n'est survenue. Disponible depuis PHP 5.3.0.
JSON_ERROR_DEPTH (entier)
La profondeur maximale de la pile a été atteinte. Disponible depuis PHP 5.3.0.
JSON_ERROR_STATE_MISMATCH (entier)
Survient avec un underflow ou avec une inadéquation des modes. Disponible depuis PHP 5.3.0.
JSON_ERROR_CTRL_CHAR (entier)
Erreur lors du contrôle des caractères ; probablement un encodage incorrect. Disponible depuis PHP 5.3.0.
JSON_ERROR_SYNTAX (entier)
Erreur de syntaxe. Disponible depuis PHP 5.3.0.
JSON_ERROR_UTF8 (entier)
Caractères UTF-8 mal formés, probablement mal encodés. Cette constante est disponible depuis PHP 5.3.3.
JSON_ERROR_RECURSION (integer)

L'objet ou le tableau passé à la fonction json_encode() inclut les références récursives et ne peuvent être encodées. Si l'option JSON_PARTIAL_OUTPUT_ON_ERROR a été fournie, NULL sera encodé à la place de la référence récursive.

Cette constante est disponible depuis PHP 5.5.0.

JSON_ERROR_INF_OR_NAN (integer)

La valeur passée à la fonction json_encode() inclut soit NAN, soit INF. Si l'option JSON_PARTIAL_OUTPUT_ON_ERROR a été fournie, 0 sera encodé à la place de ces nombres spéciaux.

Cette constante est disponible depuis PHP 5.5.0.

JSON_ERROR_UNSUPPORTED_TYPE (integer)

Une valeur d'un type non supporté a été fournie à la fonction json_encode(), comme par exemple une resource. Si l'option JSON_PARTIAL_OUTPUT_ON_ERROR a été fournie, NULL sera encodé à la place de la valeur non supportée.

Cette constante est disponible depuis PHP 5.5.0.

Les constantes suivantes peuvent être combinées pour former des options de json_encode().

JSON_HEX_TAG (entier)
Tous les caractères < et > sont convertis en séquences \u003C et \u003E. Disponible depuis PHP 5.3.0.
JSON_HEX_AMP (entier)
Tous les caractères & sont convertis en \u0026. Disponible depuis PHP 5.3.0.
JSON_HEX_APOS (entier)
Tous les guillemets ' sont convertis en \u0027. Disponible depuis PHP 5.3.0.
JSON_HEX_QUOT (entier)
Tous les guillemets doubles " sont convertis en \u0022. Disponible depuis PHP 5.3.0.
JSON_FORCE_OBJECT (entier)
Produit un objet plutôt qu'un tableau, lorsqu'un tableau non-associatif est utilisé. C'est particulièrement utile lorsque le destinataire du résultat attend un objet, et que le tableau est vide. Disponible depuis PHP 5.3.0.
JSON_NUMERIC_CHECK (entier)
Encode les chaînes numériques en tant que nombres. Disponible depuis PHP 5.3.3.
JSON_BIGINT_AS_STRING (entier)
Encode les gros entiers sous forme d'une chaîne de caractères. Disponible depuis PHP 5.4.0.
JSON_PRETTY_PRINT (entier)
Utilise des espaces dans les données retournées pour les formater. Disponible depuis PHP 5.4.0.
JSON_UNESCAPED_SLASHES (entier)
Ne pas échapper les caractères /. Disponible depuis PHP 5.4.0.
JSON_UNESCAPED_UNICODE (entier)
Encode les caractères multi-octets Unicode littéralement (le comportement par défaut est de les échapper, i.e. \uXXXX). Disponible depuis PHP 5.4.0.
add a note add a note

User Contributed Notes 1 note

up
0
Yzmir Ramirez
29 days ago
If you curious of the numeric values of the constants, as of JSON 1.2.1, the constants have the following values (not that you should use the numbers directly):

JSON_HEX_TAG => 1
JSON_HEX_AMP => 2
JSON_HEX_APOS => 4
JSON_HEX_QUOT => 8
JSON_FORCE_OBJECT => 16
JSON_NUMERIC_CHECK => 32
JSON_UNESCAPED_SLASHES => 64
JSON_PRETTY_PRINT => 128
JSON_UNESCAPED_UNICODE => 256

JSON_ERROR_DEPTH => 1
JSON_ERROR_STATE_MISMATCH => 2
JSON_ERROR_CTRL_CHAR => 3

JSON_ERROR_SYNTAX => 4

JSON_ERROR_UTF8 => 5
JSON_OBJECT_AS_ARRAY => 1

JSON_BIGINT_AS_STRING => 2
To Top