有什么好方法可以将PHP数组作为JS数组传递给我的JavaScript吗?
如果有这个 PHP 数组:
array('XYZ' => 1, 'ABC' => 2);
我需要在我的JavaScript中打印出一些情节
var myData = [['XYZ', 1], ['ABC', 2]];
问题:
如果我做 console.log(); 我得到一个对象而不是一个数组?
我想我必须在应用程序的 JavaScript 部分中解析 JSON,或者?有没有JQuery插件可以转换它?
如果你想要一个数组作为json_encode的结果,你必须把它呈现为非关联数组。
尝试这样的事情:
<?php
$a=array('XYZ' => 1, 'ABC' => 2);
$r=array();
foreach ($a as $k=>$v)
{
$r[]=array($k, $v);
}
echo json_encode($r);
如果你
这样做echo json_encode($myArray);
它会回显出来:
{
"XYZ": "1",
"ABC": "2"
}
你可以在js中使用:
在你的php页面上,你可以做:
<script>
var myJson = <?php echo json_encode($myArray) ?>;
console.log(myJson);
</script>
你可以在
PHP端使用json_encode(array)
将PHP数组转换为JSON。然后你可以直接将其分配给一个 js 变量,如 var jsarray = jsonencodedphparray
Jquery内置了它。
在 PHP 中 - 以 json 格式回显响应 回显json_encode(arr);
在 javascript 中 - 将 json 解析为对象 var obj = $.parseJSON(response)