Heim  >  Artikel  >  Backend-Entwicklung  >  So konvertieren Sie ein PHP-Array in ein JS-Array

So konvertieren Sie ein PHP-Array in ein JS-Array

藏色散人
藏色散人Original
2021-03-08 09:56:552837Durchsuche

So konvertieren Sie ein PHP-Array in ein JS-Array: 1. Verwenden Sie die foreach-Anweisung, um das Array zu durchlaufen, mit der Syntax „foreach($arr as $value){//loop body code}“ 2. In der Schleife body, verwenden Sie json_encode(), um jeden Wert im Array mit der Syntax „json_encode($value)“ zu codieren. 3. Verwenden Sie das Spleißzeichen „.“ um nach jedem kompilierten Wert ein Komma hinzuzufügen. " außerhalb aller Werte Nur das Symbol.

So konvertieren Sie ein PHP-Array in ein JS-Array

Die Betriebsumgebung dieses Artikels: Windows 7-System, PHP8, Dell G3-Computer.

JSON-Verwendung: PHP-Array in JS-Array konvertieren, wie empfängt JS PHP-Array

Laden Sie zuerst die folgende Datei herunter (dies ist ein Code, der von jemand anderem geschrieben wurde, um JSON speziell zu analysieren) und importieren Sie dann diese Datei!

http://pan.baidu.com/s/1dD8qVr7

Wenn wir nun Ajax verwenden müssen, um mit dem Hintergrund zu interagieren, wie übertragen wir dann das PHP-Array in die JS-Datei und lassen es von JS erkennen?

Schauen wir uns zuerst die PHP-Datei an. Wenn wir das $arr-Array erhalten, dient

foreach ($arr as $value) {
  $json .= json_encode($value) . ',';
} 
echo '[' . substr($json,0,strlen($json) - 1) . ']';

json_encode() dazu, jeden Wert von $arr per JSON zu kodieren, und dann möchten wir ein JSON-Array ausgeben, also kompilieren wir jedes Komma nach dem Wert und fügen Sie schließlich „[]“ außerhalb aller Werte hinzu. Dies ist das Format des JSON-Arrays. Beachten Sie, dass dies zu einem zusätzlichen Komma führt, nachdem jeder Wert json-codiert ist Die Werte werden im Array zusammengefasst, daher müssen wir die Funktion substr() verwenden, um das letzte Komma zu entfernen!

Dann schauen wir uns die js-Datei an.

Wenn wir arr verwenden, um das von der PHP-Datei übertragene JSON-Array zu empfangen, ist JSON ein in dieser Datei definiertes Objekt, wenn wir mit dem Herunterladen beginnen Analysieren Sie das JSON-Array. Konvertieren Sie es in ein JS-Array! Dies ist die Variable json, die ein js-Array empfängt, daher kann sie nicht direkt gedruckt werden. Sie können das json-Array oder json[0] zur Ausgabe durchqueren.

Um es ganz klar auszudrücken: Unsere Idee, ein PHP-Array in ein JS-Array zu konvertieren, besteht darin, die Zwischenmenge von JSON zu verwenden, um dies zu erreichen! Natürlich können Sie das Array auch nur mit PHP und JS konvertieren, es gibt mehr als eine Methode!

Konvertierung zwischen PHP-Arrays und JsonDer Grund, warum Json verwendet wird, liegt häufig in der Dateninteraktion zwischen dem Programm und der JS-Funktion bei der Verwendung von Ajax-Objekten. Da JS in PHP keine Arrays erkennt, erkennt PHP in JS keine Arrays oder Objekte. Json löst dieses Problem sehr gut.

Einführung in JSON

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

Ein Objekt ist eine ungeordnete Sammlung von „Name/Wert-Paaren“. 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:

var json = JSON.parse(arr);

2, Array

Ein Array ist eine geordnete Sammlung von Werten ​(Wert) . Ein Array beginnt mit „[“ (linke Klammer) und endet mit „]“ (rechte Klammer). Verwenden Sie "," (Komma), um Werte zu trennen.

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

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>

Hinweis: Objekte und Arrays werden in JS unterschiedlich aufgerufen. Objekte werden mit „.“ aufgerufen und Arrays werden mit „Called by“-Indizes aufgerufen [0] und [1]. Beachten Sie außerdem, dass String-Typwerte beim Übergeben von Json-Strings in Anführungszeichen gesetzt werden müssen.

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

Zum Beispiel:

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

Das Programm gibt Folgendes aus:

Der Code lautet wie folgt:

{"name":"Eric","age":23}


Schauen Sie sich das folgende Beispiel noch einmal an:

$array = array("name" => "Eric","age" => 23); 
echo json_encode($array);

Das Programm gibt aus:["Eric",23]

Wie aus den beiden obigen Beispielen ersichtlich ist, gibt json_encode() Json in Form eines Arrays zurück, wenn die Schlüssel des PHP-Arrays alle Zahlen sind . Wenn die Schlüssel des PHP-Arrays alle Zeichenfolgen 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, wenn ein solcher Json an eine JS-Funktion übergeben wird, behandelt JS den Json als Objekt und es ist für ein Objekt unmöglich, Zahlen als Attributnamen zu verwenden. Mit anderen Worten, JS weiß nicht, was das ist: user.0.username (in der Mitte steht eine Zahl Null)

[Empfohlen: „

PHP Video Tutorial

“]

Das obige ist der detaillierte Inhalt vonSo konvertieren Sie ein PHP-Array in ein JS-Array. 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