入门客AI创业平台(我带你入门,你带我飞行)
博文笔记

unset数组元素后 重新排列索引 并转为json格式

创建时间:2017-06-10 投稿人: 浏览次数:490


把一个索引数组内的某个元素删除后直接转成json输出,数据格式不正确。


那就需要在转成json之前把删除后的数组处理一下,因为前端只支持连续的索引数组


其实方法有很多种,例如

重新定义一个空数组,循环旧数组,把数据添加到新数组里foreach ($infos as $key => $value) { $infos[$key] = array_values($value); }

或是用array_splice($infos,0,1);


说实话。这两种方法都试过了 都不对 可能是我写错了  不过我用最简便的一种方法解决了大笑

代码如下:

$arr = array(array(1,23),array(1,23),array(1,23));

var_dump($arr); print_r(json_encode($arr));
foreach($arr as $k=>$v) {
  //符合条件的数据销毁
  if ($k == 1){     unset($arr[$k]);   } } var_dump($arr); print_r(json_encode($arr));die;


返回的json数据格式如下:


可以看到数组格式在unset后发生变化 解决方法很简单 仅一行代码就可以解决
在foreach后 增加
$arr = array_values($arr);

问题就完美解决了






声明:该文观点仅代表作者本人,入门客AI创业平台信息发布平台仅提供信息存储空间服务,如有疑问请联系rumenke@qq.com。