Maison > développement back-end > tutoriel php > Comment convertir un tableau PHP en tableau JSON à l'aide de « json_encode » ?

Comment convertir un tableau PHP en tableau JSON à l'aide de « json_encode » ?

Patricia Arquette
Libérer: 2024-12-03 13:12:12
original
662 Les gens l'ont consulté

How Do I Convert a PHP Array to a JSON Array Using `json_encode`?

Conversion d'un tableau PHP en tableau JSON à l'aide de json_encode

Lorsque vous travaillez avec des tableaux PHP, il est important de comprendre comment ils sont représentés en JSON lors de l'utilisation json_encode. Par défaut, les tableaux PHP sont codés en tant qu'objets JSON lorsque leurs clés ne sont pas séquentielles.

Considérez le tableau PHP suivant :

$input = [
    [
        "id" => 0,
        "name" => "name1",
        "short_name" => "n1"
    ],
    [
        "id" => 2,
        "name" => "name2",
        "short_name" => "n2"
    ]
];
Copier après la connexion

Lorsque vous tentez d'encoder ce tableau à l'aide de json_encode, le résultat serait être l'objet JSON suivant :

{
    "0": {
        "id": 0,
        "name": "name1",
        "short_name": "n1"
    },
    "2": {
        "id": 2,
        "name": "name2",
        "short_name": "n2"
    }
}
Copier après la connexion

Ce comportement se produit car les clés du tableau ne sont pas séquentielles (0 et 2). Pour encoder le tableau en tant que tableau JSON, toutes les clés doivent être séquentielles.

Solution : Réindexation avec array_values

Pour convertir le tableau dans un format séquentiel, utilisez array_values function :

$output = json_encode(array_values($input));
Copier après la connexion

Cela réindexe le tableau, en commençant par 0, garantissant des clés séquentielles. Le JSON résultant devient un tableau :

[
    {
        "id": 0,
        "name": "name1",
        "short_name": "n1"
    },
    {
        "id": 2,
        "name": "name2",
        "short_name": "n2"
    }
]
Copier après la connexion

En comprenant la représentation des tableaux PHP dans JSON et en utilisant array_values ​​pour la réindexation séquentielle, vous pouvez réussir à encoder des tableaux PHP en tant que tableaux JSON à l'aide de json_encode.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal