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":
     [
        {"u4e91u5357":"u4e3du6c5f"},
        {"u4e91u5357":"u6606u660e"}
     ]
}

来源:https://blog.csdn.net/typ2004/article/details/17657079

原文地址:https://www.cnblogs.com/KillBugMe/p/13673155.html