在PHP后端,对于数组和对象的区分不是很大,主要用到的数组居多,而PHP提供接口时响应的一般是json数据(为什么使用json呢,总体来说就是体积小速度快).但是前端对数组对象很'敏感',所以对PHP的json_encode函数原理就要有一个了解
PHP中的array是一个万能的数据类型,所以要根据需求来强制约束.
json中如果数据的下标是数字索引,从0开始且从小到大有规律的增长,那么它就是数组格式,反之则是对象
<?php $arr = [0=>0,1=>1,2=>2,3=>3]; echo json_encode($arr); // [0,1,2,3] echo '<hr>'; $obj = [1=>1,2=>2,3=>3,4=>4,5=>5]; echo json_encode($obj); // {"1":1,"2":2,"3":3,"4":4,"5":5} $arr = [0=>0,1=>1,2=>2,3=>3]; echo json_encode($arr,JSON_FORCE_OBJECT); // {"0":0,"1":1,"2":2,"3":3}