php数组的key不能重复,重复时的解决方案

PHP的数组中,key不能重复,否则会取值最后一项,


对于

"丽江","云南"=>"昆明");
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"}

     ]

}




你可能感兴趣的:(php)