javascript - 在我的 json_encode() 我的 php 数组之后我该怎么办?

标签 javascript php json

我是 php 和 javascript 的新手,无法理解如何在两者之间进行通信。我有一个 php 数组,我使用 json_encode() 将其转换为 json,现在我只是不知道从那里该做什么。我一直在环顾四周,一直无法找到从那里做什么的答案。我打印它吗?如果我打印它...我如何使用 javascript 来获取它。我不能使用 php 变量名,因为 javascript 不理解它。我只是没有掌握这个概念。

最佳答案

使 Javascript 脚本与 PHP 脚本通信的最流行方式是通过异步 Javascript 和 XML (AJAX) 请求

在 AJAX 请求中,您的 javascript 代码调用所需的 PHP 脚本,向其发送任何必需的参数。然后,您的 PHP 脚本应打印(回显)结果(在您的情况下为 JSON 编码数组),当它打印时,将在您的 JavaScript 代码中触发一个事件,您可以相应地处理该事件。

在 Javascript 中,有两种主要的方式来执行 AJAX 请求:

1- 使用 XMLHTTPRequest 对象:

在这个方法中,我们使用 Javascript XMLHTTPRequest 对象将请求发送到我们的 PHP 脚本,我们处理它的 onload 事件以获取响应并用它做一些事情:

var xmlhttp = new XMLHttpRequest();
xmlhttp.open("GET", "some_url.php?param1=123");
xmlhttp.send();
xmlhttp.onload = function() {
    //here the response from the PHP script is saved in the this.responseText variable

    //parsing the JSON string we got into an actual array
    var myArray = JSON.parse(this.responseText);
    //do something with the array
}

(注意我们也可以处理对象的onreadystatechange,但是onload处理起来简单一点)

2- 使用 promise (fetch):

fetch("some_url.php?param1=123")
.then(function(response) {
    return response.text();
})
.then(function(data)) {
    var myArray = JSON.parse(data);
    //do something with the array
});

关于javascript - 在我的 json_encode() 我的 php 数组之后我该怎么办?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56468174/

相关文章:

javascript - JS 中令人沮丧的递归函数

javascript - Gatsby 构建图像时 Node JS 崩溃

javascript - PHP Mysql 查询 - 允许用户过滤结果

php - SVN协作失败

php - 从 MySQL 数据库中删除一条记录

python - JSONDecodeError 读取大型 JSON 文件

javascript - 如何编写 JavaScript for 循环以便在满足第一个条件时中断?

javascript - evt.offsetX 在 Safari 上返回 undefined

json - 为什么express不设置json内容类型?

json - 来自 api 的 sails.js 数据在 View 中循环