📅  最后修改于: 2023-12-03 15:39:13.120000             🧑  作者: Mango
在开发 Web 应用程序时,经常需要在 PHP 和 JavaScript 之间传递数据。JSON 是一种轻量级的数据交换格式,它已成为一种常见的数据传输格式。本教程将介绍如何将 PHP JSON 数组推入 JS 文件。
首先,创建名为 data.php
的 PHP 文件,用于生成 JSON 数据。
<?php
header('Content-Type: application/json');
$data = array(
array("name" => "John", "age" => 20),
array("name" => "Mary", "age" => 25),
array("name" => "Peter", "age" => 30)
);
echo json_encode($data);
?>
该文件生成一个包含三个人的数据数组,并使用 json_encode
函数将其转换为 JSON 格式。
接下来,我们需要调用 data.php
文件,将其返回的 JSON 数据传递给 JavaScript。
<!DOCTYPE html>
<html>
<head>
<title>PHP to JSON to JavaScript</title>
</head>
<body>
<h1>PHP to JSON to JavaScript</h1>
<script type="text/javascript">
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function () {
if (xhr.readyState === 4 && xhr.status === 200) {
var data = JSON.parse(xhr.responseText);
console.log(data);
}
};
xhr.open('GET', 'data.php', true);
xhr.send();
</script>
</body>
</html>
我们使用 XMLHttpRequest
对象调用 data.php
文件,并在返回数据时使用 JSON.parse
函数将其转换为 JavaScript 对象。
现在我们已经可以从 PHP 文件中推入 JSON 数据到 JavaScript 代码中,在 JS 文件中使用该数据。
var data = [];
function processData(jsonData) {
for (var i = 0; i < jsonData.length; i++) {
var obj = jsonData[i];
console.log(obj.name + " is " + obj.age + " years old.");
data.push(obj);
}
}
var xhr = new XMLHttpRequest();
xhr.onreadystatechange = function () {
if (xhr.readyState === 4 && xhr.status === 200) {
var jsonData = JSON.parse(xhr.responseText);
processData(jsonData);
}
};
xhr.open('GET', 'data.php', true);
xhr.send();
在此 JS 代码中,我们定义了一个名为 data
的数组,然后编写了一个名为 processData
的函数,用于处理返回的 JSON 数据。最后,我们使用 XMLHttpRequest
对象从 data.php
文件中获取数据,并将其传递给 processData
函数。
通过以上步骤,我们可以轻松地将 PHP 数据转换为 JSON 格式,然后在 JavaScript 文件中使用这些数据。这是一种方便的方法,可以为 Web 开发提供更强大的功能和更高效的数据交换。