一旦工作,那就要努力的干,聪明的干,快速的干——用省下来的时间干自己喜欢干的事情。!

php unset()多维数组时,会导致json_encode()输出为对象

php lampnick 3015℃ 0评论

php unset()多维数组时,会导致json_encode()输出为对象。解决方案:采用array_values()或者sort()重新建立索引。

示例:

<?php
$arr = [
    ['a'=>'a1'],
    ['b'=>'b1'],
    ['c'=>'c1'],
    ['d'=>'d1'],
];
var_dump($arr);
echo "正常索引进行json_encode:";
echo json_encode($arr);
echo "<hr/>";
$arr2 = [
    ['a'=>'a1'],
    ['b'=>'b1'],
    ['c'=>'c1'],
    ['d'=>'d1'],
];
unset($arr2[2]);//unset()一条数组后,导致json_encode()输出对象
var_dump($arr2);
echo "unset()数据后,索引混乱进行json_encode:";
echo json_encode($arr2);
echo "<hr/>";

$arr2 = array_values($arr2);
var_dump($arr2);
echo "array_values()后进行json_encode:";
echo json_encode($arr2);

执行结果如图:

转载请注明:MitNick » php unset()多维数组时,会导致json_encode()输出为对象

喜欢 (2)or分享 (0)
头像
发表我的评论
取消评论
表情

Hi,您需要填写昵称和邮箱!

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址