将多维PHP数组传递给javascript [英] Passing a multidimensional PHP array to javascript

查看:68
本文介绍了将多维PHP数组传递给javascript的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个类似于以下内容的数组($ my_array):

I have an array($my_array) that looks something like:

array(2) {
[25]=>int(10)
[30]=>int(8)
}

我想把它分配给一个javascript数组,但是我很难做到这一点。有什么建议吗?

I'd like to assign it to a javascript array, but am having difficulties doing it. Any suggestions?

编辑:首先,我认为我可以像字符串一样分配它,但这不起作用:

At first, I thought I could just assign it like a string, but that isn't working:

var photo_limit = $my_array;

我还尝试将var_dump写入我的js值。

I tried also doing a var_dump into my js value.

我正在尝试使用类似的东西:

I'm currently trying to use something like:

for($i=0;$i<count($my_array); $i++){
echo "a[$i]='".$a[$i]."';\n";
}

谢谢。

推荐答案

最好的方法是使用 json_encode 。请参阅 json_encode参考

The best way is to use json_encode. See json_encode reference

像这样使用:

<script>
var array = <?php echo json_encode($array)?>;
</script>

请注意,您将收到Javascript对象,而不是数组。一目了然唯一的区别是如果你的数组中有字符串键,你就可以在JS中访问它们,比如 array。* string key * ,即使用点符号。

Note, hovewer, that you'll receive Javascript object, instead of array. At a glance the only difference is if you have string keys in your array, you'll be able to access them in JS like array.*string key*, i.e. using dot notation.

这篇关于将多维PHP数组传递给javascript的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆