通常的做法是创建一个单独的 PHP 文件来输出 JSON 数据并使用 AJAX 请求获取该数据。下面是一个包含内联 JSON 数据的示例,但我通常不建议这样做,尤其是在数据非常大的情况下。
用于json_encode()
将 PHP 变量转换为可以在 JavaScript 中使用的东西。使用关联数组,您将获得一个 JavaScript对象,例如{"a":1,"b":2,"c":3,"d":4,"e":5}
. 使用非关联数组,您将获得一个 JavaScript数组,例如[1,2,3,4,5]
.
<script>
<?php
$tasks = array(
145 => array(
'name' => 'Sorting Task',
'owner' => 'user1'
),
2343 => array(
'name' => 'Processing Task',
'owner' => 'user2'
),
7266 => array(
'name' => 'Another Task',
'owner' => 'user1'
),
8373 => array(
'name' => 'Lorem Ipsum Task',
'owner' => 'user3'
)
);
echo 'display_diagram(' . json_encode($tasks) . ')';
?>
function display_diagram(tasks) {
$.each(tasks, function (id, task) {
console.log('Task #' + id + ': name=' + task.name + ', owner=' + task.owner);
});
}
</script>
上面的 JavaScript 使用 jQuery 来处理对象。它应该在 JavaScript 控制台中输出以下内容:
Task #145: name=Sorting Task, owner=user1
Task #2343: name=Processing Task, owner=user2
Task #7266: name=Another Task, owner=user1
Task #8373: name=Lorem Ipsum Task, owner=user3