数组过滤后的重新排序问题

本文讨论了从数据库获取的数组在经过PHP处理后返回给前端JS时可能出现的问题,特别是当数组键值不连续时如何通过sort函数来解决这个问题。

今天遇到了一个问题,分析解决后觉得可以记下来提醒自己;

很多时候从数据库中直接取出来的是数组,例如 0=>a,1=>b,2=>c,3=>d这种,然后把数组json_encode返回给前台js,并不会有什么问题。

但当进行数组过滤时,例如把上面的数组中的第二个元素用unset去掉,变成 0=>a,2=>c,3=>d,这个时候把数组json_encode返回给js,js解析后就得不到我们想要的数组,循环就会出错。

因为键值不连续的原因吧,有时间贴一下图,返回的分别大约是这种样式

正确 {[ {},{} ]}

出错 {{ {},{} }} ,得不到数组的格式;

解决方法用sort之类的数组函数处理一下,将数组重新连贯排序,例如

sort($list);

注意而不是 $list = sort($list);

转载于:https://www.cnblogs.com/tingfengqieyu/p/5536463.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值