我想生成一个 json 数组并将其存储在我的数据库中。 我获取值并运行循环来生成。
当我对其进行编码时,我得到 ArrayArrayArray
谁能看出我哪里出了问题
for ($i=0; $i<=$sTotal;$i++){
$layout_array .= array(array("cellID" => '"'. $_POST['cell_'.$i] .'"',"studentID" => $_POST['user_'.$i]),);
}
$layout_array .= array(array("cellID" => "null","studentID" => "null"));
$layout = json_encode($layout_array);
echo $layout;
干杯
最佳答案
问题是您的 $layout_array
是 String
,因为您正在使用 .=
(连接)。
而不是:
$layout_array .= array(array("cellID" => '"'. $_POST['ce...
做:
$layout_array[] = array(array("cellID" => '"'. $_POST['ce....
并更改下一行:
$layout_array .= array(array("cellID" => "null","studentID" => "null"));
顺便说一句,为什么不使用 serialize
和 unserialize
而不是 json 编码?
编辑:为了您的舒适,请链接到我建议的函数的 php 手册。
关于php - json生成数组问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12897450/