PHP的JSON中索引数组和关联数组

索引数组和关联数组

PHP支持两种数组,一种是只保存"值"(value)的索引数组(indexed array),另一种是保存"名值对"(name/value)的关联数组(associative array)。

由于javascript不支持关联数组,所以json_encode()只将索引数组(indexed array)转为数组格式,而将关联数组(associative array)转为对象格式。

比如,现在有一个索引数组

[php] view plain copy

  1. $arr = Array('one','two''three');  

  2.    

  3. echo json_encode($arr);  

 输出

[php] view plain copy

  1. ["one","two","three"]  


 如果将它改为关联数组:

[php] view plain copy

  1. $arr = Array('1'=>'one','2'=>'two','3'=>'three');  

  2.    

  3. echo json_encode($arr);  

 输出变为

[php] view plain copy

  1. {"1":"one","2":"two","3":"three"}  

注意,数据格式从"[]"(数组)变成了"{}"(对象)。

如果你需要将"索引数组"强制转化成"对象",可以这样写

[php] view plain copy

  1. json_encode( (object)$arr);  

 或者

[php] view plain copy

  1. json_encode ( $arr, JSON_FORCE_OBJECT );  


没有更多推荐了,返回首页

私密
私密原因:
请选择设置私密原因
  • 广告
  • 抄袭
  • 版权
  • 政治
  • 色情
  • 无意义
  • 其他
其他原因:
120
出错啦
系统繁忙,请稍后再试

关闭