数组过滤后的重新排序问题
Posted 听风且雨
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数组过滤后的重新排序问题相关的知识,希望对你有一定的参考价值。
今天遇到了一个问题,分析解决后觉得可以记下来提醒自己;
很多时候从数据库中直接取出来的是数组,例如 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);
以上是关于数组过滤后的重新排序问题的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Ajax 加载过滤后的数据,而无需在 laravel 中重新加载整个页面