0

这不是一个问题,因为我已经解决了这个问题,但我坚持修复,我想知道为什么当你在 ajax 调用中将它返回到 javascript 时,你需要在 php 中加倍 json_encode 数组例子。

我的阵列

$jsonData = array('foo', 'bar');
$jsonData['catOne'][] = array('foo two', 'bar two');

PHP

return json_encode(json_encode($jsonData));
4

1 回答 1

3

你不需要。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]}""

看到不同?

于 2012-04-04T17:45:45.373 回答