php数组的key不能重复,重复时的解决方案【转】
PHP的数组中,key不能重复,否则会取值最后一项,
对于
<?php$citylist = array("云南"=>"丽江","云南"=>"昆明");var_dump($citylist);?>
输出
array(1) { ["云南"]=> string(6) "昆明" }
解决方案,把每一个封装为一个value,这样默认的key是0,1,2……不重复
$citylist = array(array("云南"=>"丽江"),array("云南"=>"昆明"));
输出为
array(2) { [0]=> array(1) { ["云南"]=> string(6) "丽江" } [1]=> array(1) { ["云南"]=> string(6) "昆明" } }
对于json编码来说,经过
$json_string = json_encode(array('area'=>$citylist));echo $json_string;
得到
{
"area":
[
{"\u4e91\u5357":"\u4e3d\u6c5f"},
{"\u4e91\u5357":"\u6606\u660e"}
]
}