这并不是一个问题,因为我已经解决了这个问题,但我被困在修复中,我想知道为什么当你在 php 中将其返回到 javascript 时,需要对 php 中的多维数组进行双重 json_encode例如ajax调用。
我的数组
$jsonData = array('foo', 'bar');
$jsonData['catOne'][] = array('foo two', 'bar two');
PHP
return json_encode(json_encode($jsonData));
最佳答案
你不需要。 json_encode
遍历最深层的元素,json 将被完美编码:
$arr = array(
1 => array(5,6,7),
2 => array(4,3,2),
);
var_dump(json_encode($arr));
其输出是:
string(25) "{"1":[5,6,7],"2":[4,3,2]}"
如果你尝试:
var_dump(json_encode(json_encode($arr)));
输出将是:
string(31) ""{\"1\":[5,6,7],\"2\":[4,3,2]}""
看出区别了吗?
关于php - 双重编码php多维数组发送到javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10016478/