从PHP将2d数组传递到JavaScript的最佳方法?

从PHP将2d数组传递到JavaScript的最佳方法?,php,javascript,arrays,Php,Javascript,Arrays,我想在JavaScript代码中使用一个PHP数组。我不希望对其中的所有元素都执行类似于的操作,因为它的编号未知。我本来打算做一个while循环,将一些数据写入元素中,但目前似乎找不到一个简单的方法 如何以最简单的方式将2d数组从PHP传递到JavaScript?使用JSON_encode函数作为JSON对象。然后,您可以使用Javascript轻松地读取它,因为它是一个本机Javascript对象 JSON在JQuery中很容易解析,但对于纯JavaScript,请参见此处: 惰性方法: &l

我想在JavaScript代码中使用一个PHP数组。我不希望对其中的所有元素都执行类似于
的操作,因为它的编号未知。我本来打算做一个while循环,将一些数据写入元素中,但目前似乎找不到一个简单的方法


如何以最简单的方式将2d数组从PHP传递到JavaScript?

使用JSON_encode函数作为JSON对象。然后,您可以使用Javascript轻松地读取它,因为它是一个本机Javascript对象

JSON在JQuery中很容易解析,但对于纯JavaScript,请参见此处:

惰性方法:

<script>
var arr = [];

<?php
    $phparray = array(array(1, 2, 3), array(4, 5, 6));

    foreach ($phparray as $i) {
        echo 'arr.push([' . implode(', ', $i) . ']);';
    }
?>

</script>

var-arr=[];

这不是“最好”的方法,但它很管用。

我可以在右栏中看到很多重复的方法。例如,(解决相同的问题)可能的问题是,在javascript端从字符串解析为JSON对象的过程中,数组的顺序丢失了。例如键为0.5 1的数组将被javascript更改为0.1 0.5。此行为因浏览器而异。
<script>
var arr = [];

<?php
    $phparray = array(array(1, 2, 3), array(4, 5, 6));

    foreach ($phparray as $i) {
        echo 'arr.push([' . implode(', ', $i) . ']);';
    }
?>

</script>