【发布时间】:2014-06-11 19:55:30
【问题描述】:
我对为什么以下代码不起作用有些困惑:
$data_set = array();
for($i=1; $i<=3; $i++)
{
$data_val = array($i, $i*2);
$data_set[] = $data_val;
}
echo json_encode($data_set);
我的期望是这样的
[ [1,2], [2,4], [3,6] ]
我得到的是一个空字符串。
但是,如果我这样做
$data_set = array();
for($i=1; $i<=3; $i++)
{
$data_val = array($i, $i*2);
$data_set[] = json_encode($data_val);
}
echo json_encode($data_set);
我得到这样的东西:
[ "[1,2]", "[2,4]", "[3,6]" ]
所以,似乎更深层次的 数组 不起作用。 我错过了什么?
【问题讨论】:
-
我尝试运行您的第一个示例,它给了我预期的结果。即
[[1,2],[2,4],[3,6]] -
你可以改用
var_dump($data_set);吗?您的代码有效:3v4l.org/AiL2U -
非常适合我。
-
Drumbeg 和 VikingBlooded 都是正确的。不知道我的困惑从何而来。
标签: php arrays json multidimensional-array