php - 在 JavaScript 中读取 PHP 关联数组值

标签 php jquery ajax

我尝试从数据库值生成简单的图表。我使用 AJAX 从数据库获取值并将其返回给 javascript。我想用 Canvas 从这个值生成图表,但我不知道如何在 JavaScript 中读取关联 PHP 数组。

@编辑

AJAX 请求:

$.post({
    type: "POST",
    url: "execute.php",
    data: {producer: producer, before: before, after: after, name: name},
    dateType: 'json',
    cache: false,
}).done(function(data) { 
    $("#xdebug").html(data);
});

PHP 结果如下所示:

$params = array();

foreach(array_unique($dates) as $date) { 
    $params[] = array("date" => $date, "sold" => sumOrders($date, $dbh), "scale" => sumOrders($date, $dbh) * 10);
}

echo json_encode($params);

我在 javascript 中收到一个这个数组

[{
    "date": "2017-12-01",
    "sold": "0",
    "scale": 0
}, {
    "date": "2017-12-02",
    "sold": "0",
    "scale": 0
}, {
    "date": "2017-12-03",
    "sold": "0",
    "scale": 0
}, {
    "date": "2017-12-04",
    "sold": "0",
    "scale": 0
}, {
    "date": "2017-12-05",
    "sold": "0",
    "scale": 0
}, {
    "date": "2017-12-06",
    "sold": "0",
    "scale": 0
}, {
    "date": "2017-12-07",
    "sold": "0",
    "scale": 0
}, {
    "date": "2017-12-08",
    "sold": "0",
    "scale": 0
}, {
    "date": "2017-12-09",
    "sold": "0",
    "scale": 0
}, {
    "date": "2017-12-10",
    "sold": "0",
    "scale": 0
}, {
    "date": "2017-12-11",
    "sold": "0",
    "scale": 0
}, {
    "date": "2017-12-12",
    "sold": "0",
    "scale": 0
}, {
    "date": "2017-12-13",
    "sold": "0",
    "scale": 0
}]

我该怎么做呢?

最佳答案

首先,您的ajax代码中有一个拼写错误:

$.post({
    type: "POST",
    url: "execute.php",
    data: {producer: producer, before: before, after: after, name: name},
    dataType: 'json', //dataType not dateType
    cache: false,
}).done(function(data) { 
    $("#xdebug").html(data);
});

现在 data 中的响应将是一个 json 对象,您可以轻松使用它,例如:

.done(function(data) { 
    data.forEach(function (item){
        console.log(item.date);
        console.log(item.sold);
        console.log(item.scale);
    })
});

关于php - 在 JavaScript 中读取 PHP 关联数组值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47808195/

相关文章:

php - 如何根据自己和别人是否有内容来决定显示哪个元素

jquery - Chrome 扩展 Ajax 调用返回 403

ajax - Django - 自定义装饰器仅允许 ajax 请求

php - Wordpress REST API 自定义帖子类型 禁止删除访问

javascript - 如何在 JS 中调用 PHP mail() 函数?

php - CakePHP 2.0 对象不是数组

php - 创建动态链接而不创建新的 .php 页面/文件

php - 严格的标准不允许简单的 php explode 语句?

jquery - 阻止 jQuery 做它的事情?

javascript - 在使用稍后提到的原型(prototype)的类中设置事件?