Heim  >  Artikel  >  Backend-Entwicklung  >  PHP-Array konvertiert JSON-String

PHP-Array konvertiert JSON-String

韦小宝
韦小宝Original
2018-05-14 14:17:175640Durchsuche

Der Grund, warum wir JSON in unserer PHP-Entwicklung verwenden, liegt darin, dass Ajax-Objekte häufig zur Interaktion mit Daten zwischen Programmen und JS-Funktionen verwendet werden. Da JS in PHP keine Arrays erkennt, erkennt PHP in JS keine Arrays oder Objekte. Json löst dieses Problem sehr gut.

Json-Einführung

JSON (JavaScript Object Notation) ist ein leichtes Datenaustauschformat. Es basiert auf einer Teilmenge von JavaScript, was bedeutet, dass JavaScript Json direkt lesen kann, was sehr praktisch ist. Die spezifische Form von

Json ist:

1. Objekt

Das Objekt ist ein ungeordnetes „Name/Wert“-Paar. versammeln. Ein Objekt beginnt mit „{“ (linke Klammer) und endet mit „}“ (rechte Klammer). Auf jeden „Namen“ folgt ein „:“ (Doppelpunkt); „Name/Wert“-Paare werden durch ein „“, (Komma) getrennt.

Zum Beispiel: {"Benutzername": "Eric", "Alter":23, "Geschlecht": "Mann"🎜>

Codebeispiel:

<script type="text/javascript">   function getUser() {
        var user = {
            "username": "Eric",
            "age": 23,
            "family": {"mother": "Marry", "father": "Alon", "brother": "Tom"}
        };
        alert(user.username);
        alert(user.age);
        alert(user.family.brother);
    }
    getUser();   </script>

2. Array

Ein Array ist eine geordnete Sammlung von Werten. Ein Array beginnt mit „[“ (linke Klammer) und endet mit „]“ (rechte Klammer). Werte werden durch "," (Komma) getrennt.

Zum Beispiel: ["Eric",23, "man"]

Codebeispiel:

<script type="text/javascript">   function getArray() {
        var arr = ["Jarry", 23, ["www.xiaophper.com", "wxyh_999@126.com"]];
        alert(arr[0]);
        alert(arr[1]);
        alert(arr[2][0]);
        alert(arr[2][1]);
    }
    getArray();   </script>
Hinweis: In JS werden sowohl Objekt- als auch Array-Formen aufgerufen anders jetzt. Objekte werden mit „.“ aufgerufen und Arrays werden mit Indizes [0] und [1] aufgerufen. Beachten Sie außerdem, dass String-Typwerte beim Übergeben von Json-Strings in Anführungszeichen gesetzt werden müssen.

Array in Json in PHP konvertieren

Leistungsstarkes PHP bietet

integrierte Funktionen : json_encode() und json_decode() . Es ist leicht zu verstehen, dass json_encode() das PHP-Array in Json konvertiert. Im Gegenteil, json_decode() konvertiert Json in ein PHP-Array.

Zum Beispiel:

$array = array("name" => "Eric","age" => 23); 
echo json_encode($array);
Das Programm druckt Folgendes aus: {"name":"Eric","age":23🎜>

Sehen Sie sich das folgende Beispiel an noch einmal:

Das Programm gibt Folgendes aus: ["Eric",23]
$array = array(0 => "Eric", 1 => 23); 
echo json_encode($array);


Wie aus den beiden obigen Beispielen ersichtlich ist, sind die Schlüssel des PHP-Arrays Sind alle Zahlen, dann gibt json_encode() Json in Form eines Arrays zurück, wenn die Schlüssel des PHP-Arrays alle

Strings

sind. Dann gibt json_encode() Json in Form eines Objekts zurück. Ich habe es gerade gesagt. Die beiden Aufrufe in js sind unterschiedlich. Solange der Schlüssel des PHP-Arrays einen Schlüssel in Form einer Zeichenfolge enthält, gibt json_encode() Json in Form eines Objekts zurück. Das ist falsch. Denn obwohl im PHP-Code
keine Fehler auftreten, behandelt JS diesen Json als Objekt, wenn ein solcher Json an eine JS-Funktion übergeben wird, und es ist für ein Objekt unmöglich, Zahlen als Attribute. Berühmt. Mit anderen Worten, JS weiß nicht, was das ist: user.0.username (die Mitte ist die Zahl Null)Ähnliche Lesart:

Verwendung von JSON in PHP konvertieren mit

Das obige ist der detaillierte Inhalt vonPHP-Array konvertiert JSON-String. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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