Heim > Backend-Entwicklung > PHP-Tutorial > Wie konvertiere ich ein PHP-Array mit „json_encode' in ein JSON-Array?

Wie konvertiere ich ein PHP-Array mit „json_encode' in ein JSON-Array?

Patricia Arquette
Freigeben: 2024-12-03 13:12:12
Original
604 Leute haben es durchsucht

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

Konvertieren eines PHP-Arrays in ein JSON-Array mit json_encode

Bei der Arbeit mit PHP-Arrays ist es wichtig zu verstehen, wie diese bei der Verwendung in JSON dargestellt werden json_encode. Standardmäßig werden PHP-Arrays als JSON-Objekte codiert, wenn ihre Schlüssel nicht sequentiell sind.

Betrachten Sie das folgende PHP-Array:

$input = [
    [
        "id" => 0,
        "name" => "name1",
        "short_name" => "n1"
    ],
    [
        "id" => 2,
        "name" => "name2",
        "short_name" => "n2"
    ]
];
Nach dem Login kopieren

Beim Versuch, dieses Array mit json_encode zu codieren, würde das Ergebnis sei das folgende JSON-Objekt:

{
    "0": {
        "id": 0,
        "name": "name1",
        "short_name": "n1"
    },
    "2": {
        "id": 2,
        "name": "name2",
        "short_name": "n2"
    }
}
Nach dem Login kopieren

Dieses Verhalten tritt auf, weil die Array-Schlüssel nicht sequentiell sind (0 und 2). Um das Array als JSON-Array zu kodieren, müssen alle Schlüssel sequentiell sein.

Lösung: Neuindizierung mit array_values

Um das Array in ein sequentielles Format zu konvertieren, verwenden Sie array_values Funktion:

$output = json_encode(array_values($input));
Nach dem Login kopieren

Dies indiziert das Array neu, beginnend bei 0, um sequentielle Schlüssel sicherzustellen. Das resultierende JSON wird zu einem Array:

[
    {
        "id": 0,
        "name": "name1",
        "short_name": "n1"
    },
    {
        "id": 2,
        "name": "name2",
        "short_name": "n2"
    }
]
Nach dem Login kopieren

Wenn Sie die PHP-Array-Darstellung in JSON verstehen und array_values ​​für die sequentielle Neuindizierung verwenden, können Sie PHP-Arrays mit json_encode erfolgreich als JSON-Arrays kodieren.

Das obige ist der detaillierte Inhalt vonWie konvertiere ich ein PHP-Array mit „json_encode' in ein JSON-Array?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage