Maison >développement back-end >Problème PHP >Comment convertir un objet json en tableau PHP
json est un format d'échange de données léger qui devient de plus en plus populaire. PHP est un excellent langage de programmation côté serveur, idéal pour le développement Web. Par conséquent, convertir des objets json en tableaux PHP est une compétence très utile. Dans cet article, nous apprendrons comment convertir un objet json en tableau PHP.
La fonction json_decode() en PHP est le principal moyen de convertir une chaîne au format json en une variable PHP (tableau ou objet). La syntaxe est la suivante :
mixed json_decode(string $json[, bool $assoc = FALSE[, int $depth = 512[, int $options = 0]]])
Description du paramètre :
json
: chaîne json. json
:json 字符串。assoc
:一个布尔值,指示是否将 json 对象转换为关联数组。depth
:整数类型,指示最大深度。默认情况下,最大深度为 512,可以使用常量 JSON_DEPTH
定义。options
:选项,用于更细粒度地控制解码过程。可以使用以下常量的组合:常量 | 描述 |
---|---|
JSON_BIGINT_AS_STRING |
在 PHP 5.4.0 及更高版本中可用。将大于 PHP_INT_MAX 的整数转换为字符串。 |
JSON_INVALID_UTF8_IGNORE JSON_INVALID_UTF8_SUBSTITUTE
|
在 PHP 5.3.3 及更高版本中可用。JSON_INVALID_UTF8_IGNORE 此选项将忽略非法 UTF-8 字符。JSON_INVALID_UTF8_SUBSTITUTE 此选项将使用 Unicode 替换字符来替换非法 UTF-8 字符。 |
JSON_OBJECT_AS_ARRAY |
将 json 对象转换为关联数组。 |
JSON_THROW_ON_ERROR 在 PHP 7.3.0 及更高版本中可用。此常量用于自动抛出异常,而不是返回 FALSE 。 |
示例:
以下是 JSON 字符串:
{ "name": "John Doe", "age": 30, "city": "New York" }
使用 json_decode()
函数将其转换为关联数组:
$json = '{"name":"John Doe","age":30,"city":"New York"}'; $arr = json_decode($json, true); print_r($arr);
输出:
Array ( [name] => John Doe [age] => 30 [city] => New York )
JSON_UNESCAPED_UNICODE
assoc
: Une valeur booléenne indiquant s'il faut convertir l'objet json en un tableau associatif. profondeur
: Type entier, indiquant la profondeur maximale. Par défaut, la profondeur maximale est de 512, qui peut être définie à l'aide de la constante JSON_DEPTH
. options
: options pour un contrôle plus précis du processus de décodage. Des combinaisons des constantes suivantes peuvent être utilisées : Constante | Description |
---|---|
JSON_BIGINT_AS_STRING |
Disponible en PHP 5.4.0 et supérieur. Convertit un entier supérieur à PHP_INT_MAX en chaîne. |
JSON_INVALID_UTF8_IGNORE JSON_INVALID_UTF8_SUBSTITUTE
|
En PHP 5.3.3 et supérieur Disponible dans . JSON_INVALID_UTF8_IGNORE Cette option ignore les caractères UTF-8 illégaux. JSON_INVALID_UTF8_SUBSTITUTE Cette option remplacera les caractères UTF-8 illégaux par des caractères de remplacement Unicode. |
JSON_OBJECT_AS_ARRAY |
Convertir l'objet json en tableau associatif. |
JSON_THROW_ON_ERROR Disponible en PHP 7.3.0 et supérieur. Cette constante est utilisée pour lever automatiquement une exception au lieu de renvoyer FALSE . |
<?php // 1. 定义 json 格式的字符串 $json = '{"name":"John Doe","age":30,"city":"New York"}'; // 2. 将 json 格式的字符串转换为 PHP 数组 $arr = json_decode($json, true); // 3. 输出转换后的数组 print_r($arr); ?>
json_decode() le convertit en un tableau associatif :
Array ( [name] => John Doe [age] => 30 [city] => New York )
rrreee
JSON_UNESCAPED_UNICODE
pour vous assurer que les caractères non-ASCII sont échappés. 🎜🎜🎜🎜Exemple🎜🎜🎜Voici l'exemple complet de conversion d'une chaîne json en tableau PHP : 🎜rrreee🎜Sortie : 🎜rrreee🎜🎜Conclusion🎜🎜🎜Comme mentionné ci-dessus, nous pouvons convertir un objet json en utilisant la fonction json_decode() est un Tableau PHP. Cette technique est très utile dans le développement Web et nous aide à analyser les données JSON des appels AJAX. 🎜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!