php返回json数据到前台的一个小问题

1.用php返回json格式的列表数据到前台时,没有正常被前台框架解析,按F12在network里查看发现是json格式的错误,如下:

php返回json数据到前台的一个小问题

php返回json数据到前台的一个小问题

2.经查证导致格式不一样的原因是:

当array是一个从0开始的连续数组时,json_encode出来的结果是一个由[]括起来的字符串。

而当array是不从0开始或者不连续的数组时,json_encode出来的结果是一个由{}括起来的key-value模式的字符串。

3.因为前端框架只识别第一种情况,解决办法就是把要传的数组键值变成从0开始的连续数字,可以用array_values($arr);来重置键值,这样传回前台就可以识别了。