php array_unique之后json_encode需要注意

时间:2022-08-22 22:14:25

例如:array_unique(array(1, 1, 2)); 
他的结果是 
array(2) { 
[0]=> 
int(1) 
[2]=> 
int(2) 


这就不是numeric数组了,直接做json_encode,会输出一个json对象,而不是数组 
{"0":1,"2":2} 

如果这时候页面上js需要的是[1,2]这种数组数据格式,就有可能会产生错误 

此时应该在array_unique之后,在做一个array_values 
这样:array_values(array_unique(array(1, 1, 2))); 

结果就是[1,2]