代码:var_dump($page_temp);
var_dump($page_path);
$page_path = array_merge($page_temp,$page_path);
var_dump($page_path);得到结果如下:
array(1) { [554]=> string(18) "Socket网络通信" } 
array(1) { [3008]=> string(4) "1212" } 
array(2) { [0]=> string(18) "Socket网络通信" [1]=> string(4) "1212" }为什么只保存了值,没有保存键??

解决方案 »

  1.   

    例 237. array_merge() 例子
    copy to clipboard
    <?php
    $array1 = array("color" => "red", 2, 4);
    $array2 = array("a", "b", "color" => "green", "shape" => "trapezoid", 4);
    $result = array_merge($array1, $array2);
    print_r($result);
    ?>上例将输出:copy to clipboard
    Array
    (
       [color] => green
       [0] => 2
       [1] => 4
       [2] => a
       [3] => b
       [shape] => trapezoid
       [4] => 4
    ) ?>
      

  2.   

    数字键名将会被重新编号
    改成:$page_temp = array('554'=>'Socket网络通信');
    $page_path = array('3008'=>'1212');
    $page_path = $page_temp+$page_path;
    print_r($page_path);
      

  3.   

    array_merge 数字键名将会被重新编号! 如果你想完全保留原有数组并只想新的数组附加到后面,用 + 运算符: $page_path = $page_temp+$page_path;可以保留数字键名