Méthodes courantes php json : 1. json_encode(), utilisé pour décoder les chaînes au format JSON ; 2. json_encode(), utilisé pour décoder les chaînes au format JSON ; 3. json_last_error(), utilisé pour renvoyer la dernière erreur survenue.
L'environnement d'exploitation de ce tutoriel : système Windows 7, PHP version 7.1, ordinateur DELL G3
php méthodes courantes json :
1, json_encode()
PHP json_encode() est utilisé JSON encode la variable Si la fonction est exécutée avec succès, elle renvoie les données JSON, sinon elle renvoie FALSE.
Syntaxe
string json_encode ( $value [, $options = 0 ] )
Exemple :
<?php $arr = array('a' => 1, 'b' => 2, 'c' => 3, 'd' => 4, 'e' => 5); echo json_encode($arr); ?>
Résultat de sortie :
{"a":1,"b":2,"c":3,"d":4,"e":5}
2, la fonction json_encode()
json_decode() est utilisée pour décoder les chaînes au format JSON et les convertir en variables PHP.
Syntaxe :
mixed json_decode ($json_string [,$assoc = false [, $depth = 512 [, $options = 0 ]]])
Paramètres :
json_string : chaîne JSON à décoder, doit être une donnée codée en UTF-8
assoc : Lorsque ce paramètre est TRUE, un tableau sera renvoyé, et lorsqu'il est FALSE, un objet sera restitué.
profondeur : paramètre de type entier, qui précise la profondeur de récursion
options : masque binaire, actuellement seul JSON_BIGINT_AS_STRING est supporté.
Exemple :
Résultat de sortie :
object(stdClass)#1 (5) { ["a"] => int(1) ["b"] => int(2) ["c"] => int(3) ["d"] => int(4) ["e"] => int(5) } array(5) { ["a"] => int(1) ["b"] => int(2) ["c"] => int(3) ["d"] => int(4) ["e"] => int(5) }
3, json_last_error()
json_last_error - Renvoie la dernière erreur survenue
Syntaxe :
json_last_error()
If any, renvoie la dernière erreur survenue pendant Erreur d'encodage et de décodage JSON. Un entier sera renvoyé, et cette valeur sera l'une des constantes suivantes :
constant | signification | disponibilité | |
---|---|---|---|
JSON_ERROR_ AUCUN< /code ><code>JSON_ERROR_NONE | 没有错误发生 | ||
JSON_ERROR_DEPTH | 到达了最大堆栈深度 | ||
JSON_ERROR_STATE_MISMATCH | 无效或异常的 JSON | ||
JSON_ERROR_CTRL_CHAR | 控制字符错误,可能是编码不对 | ||
JSON_ERROR_SYNTAX | 语法错误 | ||
JSON_ERROR_UTF8 | 异常的 UTF-8 字符,也许是因为不正确的编码。 | PHP 5.3.3 | |
JSON_ERROR_RECURSION | One or more recursive references in the value to be encoded | PHP 5.5.0 | |
JSON_ERROR_INF_OR_NAN | One or more NAN
or INF
values in the value to be encoded | PHP 5.5.0 | |
JSON_ERROR_UNSUPPORTED_TYPE | 指定的类型,值无法编码。 | PHP 5.5.0 | |
JSON_ERROR_INVALID_PROPERTY_NAME | 指定的属性名无法编码。 | PHP 7.0.0 | |
JSON_ERROR_UTF16 | Aucune erreur ne s'est produite
JSON_ERROR_CTRL_CHAR
🎜🎜🎜Erreur de caractère de contrôle, éventuellement mauvais encodage 🎜 json_error_syntax
🎜🎜🎜syntax error🎜 json_error_utf8
🎜🎜🎜Exceptional Caractères UTF-8, peut-être dus à un encodage incorrect. PHP 5.3.3 OR_INF_OR_NAN code>🎜🎜🎜Un ou plusieurs 🎜NAN
🎜
ou 🎜INF
🎜
valeurs dans la valeur à encoder🎜🎜PHP 5.5.0🎜🎜🎜🎜🎜JSON_ERROR_UNSUPPORTED_TYPE
🎜🎜🎜Le type spécifié, la valeur ne peut pas être encodée. 🎜🎜PHP 5.5.0🎜🎜🎜🎜🎜JSON_ERROR_INVALID_PROPERTY_NAME
🎜🎜🎜Le nom de propriété spécifié ne peut pas être encodé. 🎜🎜PHP 7.0.0🎜🎜🎜🎜🎜JSON_ERROR_UTF16
🎜🎜🎜Caractères UTF-16 mal formés, peut-être parce que l'encodage des caractères est incorrect. 🎜🎜PHP 7.0.0🎜🎜🎜🎜🎜Exemple : 🎜<?php // 一个有效的 json 字符串 $json[] = '{"Organization": "PHP Documentation Team"}'; // 一个无效的 json 字符串会导致一个语法错误,在这个例子里我们使用 ' 代替了 " 作为引号 $json[] = "{'Organization': 'PHP Documentation Team'}"; foreach ($json as $string) { echo 'Decoding: ' . $string; json_decode($string); switch (json_last_error()) { case JSON_ERROR_NONE: echo ' - No errors'; break; case JSON_ERROR_DEPTH: echo ' - Maximum stack depth exceeded'; break; case JSON_ERROR_STATE_MISMATCH: echo ' - Underflow or the modes mismatch'; break; case JSON_ERROR_CTRL_CHAR: echo ' - Unexpected control character found'; break; case JSON_ERROR_SYNTAX: echo ' - Syntax error, malformed JSON'; break; case JSON_ERROR_UTF8: echo ' - Malformed UTF-8 characters, possibly incorrectly encoded'; break; default: echo ' - Unknown error'; break; } echo PHP_EOL; } ?>
Decoding: {"Organization": "PHP Documentation Team"} - No errors Decoding: {'Organization': 'PHP Documentation Team'} - Syntax error, malformed JSON
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!