我想通过 JSON 传递数组,如下所示:
<?php
for(i=0;i<5;i++) {
$arrayA[i] = "A" . i;
$arrayB[i] = "B" . i;
}
echo json_encode($arrayA,$arrayB);
?>
我知道这是不可能的,但是还有其他方法可以传递动态加载的数组并在那之后用 javascript 读取它们吗?
只需将两个数组放在另一个数组中。
$returnArr = array($arrayA,$arrayB);
echo json_encode($returnArr);
在 JS 端,只需使用您选择的库进行解码,然后像访问任何普通数组一样访问返回的数组。
echo json_encode(array('arrayA' => $arrayA, 'arrayB' => $arrayA));
只需为您的数组创建包装器:
for(i=0;i<5;i++) {
$arrayA[i] = "A" . i;
$arrayB[i] = "B" . i;
}
$arrayC = array($arrayA,$arrayB);
echo json_encode($arrayC);
在 jQuery 方面:
$.getJSON('ajax/yourPhpFile.php', function(data) {
$.each(data, function(key, val) {
// each `val` is one of the arrays you passed from php
});
});
您可以使用 AJAX 加载将返回 PHP 生成的数组的脚本。如果你使用 jQuery,你可以使用 $.get() 或 $.getJSON() 来调用它。您可以在此处阅读 PHP JSON 手册http://php.net/manual/en/book.json.php并在此处阅读 jQuery .getJson() 函数http://api.jquery.com/jQuery.getJSON/