今天做项目遇到个问题,一个接口,输出二维数组,前端说他要的数据格式是数组,而不是对象,就像上个数据一样,我当时就懵逼了,,,什么对象?我明明输出的是数组啊。。。然后我看了看我返回的json串,emmmm怎么肥事,怎么成对象了?然后问度娘呗,啊哈,果然找到了,php数组在以json形式输出是是需要转码的,但是转码的时候,如果你是索引数组就转成数组,如果你是关联数组就转换成对象。。。好吧,原来如此,那么索引数组和关联数组的区别是什么呢?我们都知道数组就是键值对嘛,key-value形式,索引数组就是以数字做为键,而关联数组是以字符串作为键,举个栗子:
这个红色的二维数组就是索引数组,因为键是数字,
这个黑色的一维数组就是关联数组,因为键是字符串。
[0] => Array ( [url] => http://192.168.1.105/uploads/images/20190812/7418745a0b589144922e3641c1e7a6ce.png [text] => 三室一厅.89平 ) [1] => Array ( [url] => http://192.168.1.105/uploads/images/20190812/632d41b6b5a0a46def040200a0cfe3e9.png [text] => 一室一厅 )