Heim  >  Artikel  >  Backend-Entwicklung  >  So übergeben Sie ein Array in PHP an js

So übergeben Sie ein Array in PHP an js

PHPz
PHPzOriginal
2023-04-25 09:04:09734Durchsuche

In der Webentwicklung müssen wir häufig Daten vom Backend (z. B. PHP) an das Frontend (z. B. JavaScript) übergeben. Mithilfe der AJAX-Technologie können wir Back-End-Daten asynchron abrufen, ohne die Webseite zu aktualisieren. In einigen Fällen möchten wir jedoch das Back-End-Array direkt an das Front-End übergeben, um die Front-End-Verarbeitung zu erleichtern. In diesem Artikel wird erklärt, wie man Arrays in PHP an JavaScript übergibt.

1. Konvertieren Sie das Array in das JSON-Format

Bevor wir das Array an JavaScript übergeben, müssen wir das Array in eine Datenstruktur konvertieren, die in JavaScript erkannt werden kann. Hier können wir das JSON-Format (JavaScript Object Notation) verwenden, ein Textformat für den Datenaustausch und eine Syntax zur Darstellung von Objekten in JavaScript. PHP verfügt über eine integrierte json_encode()-Funktion, die PHP-Arrays in das JSON-Format konvertieren kann.

Beispielcode:

$data = array('name' => 'John', 'age' => 30, 'city' => 'New York');
$data_json = json_encode($data);
echo $data_json;

Ausgabeergebnis:

{"name":"John","age":30,"city":"New York"}

2. JSON-Daten am Frontend abrufen

Am Frontend können wir die JSON-Datenausgabe von PHP über eine AJAX-Anfrage abrufen, Beispielcode:

$.ajax({
    type: "POST",  // 或者 GET
    url: "data.php",  // 后端程序地址
    dataType: "json",  // 返回的数据类型
    success: function(data) {  // 成功回调函数
        console.log(data.name);
        console.log(data.age);
        console.log(data.city);
    }
});

It Es ist zu beachten, dass der dataType-Parameter den von der Anforderung zurückgegebenen Datentyp angibt. Hier ist er auf json festgelegt. Wenn das zurückgegebene JSON-Format nicht zulässig ist, werden die Daten daher nicht normal analysiert.

3. JSON-Daten direkt in PHP ausgeben

Neben der Konvertierung von Arrays in das JSON-Format und der anschließenden Ausgabe in PHP können wir Arrays auch direkt im JSON-Format ausgeben. Diese Methode ist prägnanter, erfordert jedoch das Hinzufügen des entsprechenden Antwortheaders am Anfang der PHP-Datei.

Beispielcode:

$data = array('name' => 'John', 'age' => 30, 'city' => 'New York');
header('Content-Type: application/json');  // 响应头,指定返回的数据类型为 JSON
echo json_encode($data);

Am Frontend können Sie PHP-Dateien direkt über AJAX aufrufen, ohne sie zu analysieren.

4. Verwenden Sie Inline-Skripte, um Daten zu übergeben.

In PHP-Dateien können wir auch Inline-Skripte verwenden, um Daten an JavaScript zu übergeben. Diese Methode ist relativ einfach, aber schwierig in der Wartung und wird nicht empfohlen.

Beispielcode:

$data = array('name' => 'John', 'age' => 30, 'city' => 'New York');
echo '<script> var data = ' . json_encode($data) . '; </script>';

Nachdem der obige Code das Array in das JSON-Format konvertiert hat, betten Sie es direkt in das Skript-Tag ein und verwenden Sie dann die variablen Daten, um auf das Array im Frontend zuzugreifen.

5. Verwenden Sie versteckte Eingabe-Tags, um Daten zu übergeben.

Wenn Sie das Array beim Senden des Formulars in PHP übermitteln müssen, können wir das Array in ein verstecktes Eingabe-Tag einfügen und es dann an die Rückseite übergeben, wenn das Formular gesendet wird Ende eingereicht.

Beispielcode:

$data = array('name' => 'John', 'age' => 30, 'city' => 'New York');
echo '<form action="process.php" method="post">';
foreach ($data as $key => $value) {
    echo '<input type="hidden" name="data[&#39; . $key . &#39;]" value="&#39; . $value . &#39;">';
}
echo '<button type="submit">提交</button>';
echo '</form>';

Fügen Sie dem Formular einen Array-Parameter mit dem Namen data hinzu und fügen Sie dann jedes Element im PHP-Array nacheinander über eine Schleife zum ausgeblendeten Eingabe-Tag hinzu. Das gesamte Array kann über $_POST['data'] im Backend abgerufen werden.

Die oben genannten Methoden zeigen, wie man Arrays in PHP an JavaScript übergibt. In verschiedenen Szenarien können unterschiedliche Methoden verwendet werden, und sie müssen entsprechend den spezifischen Anforderungen in tatsächlichen Anwendungen ausgewählt werden.

Das obige ist der detaillierte Inhalt vonSo übergeben Sie ein Array in PHP an js. 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