PHP在前面附加带有文字键的关联数组?

2022-08-30 07:08:13

是否可以在关联数组前面加上文字键 = >值对?我知道array_unshift()与数字键一起工作,但我希望能与文字键一起使用。

作为一个例子,我想做以下事情:

$array1 = array('fruit3'=>'apple', 'fruit4'=>'orange');
$array2 = array('fruit1'=>'cherry', 'fruit2'=>'blueberry');

// prepend magic

$resulting_array = ('fruit1'=>'cherry', 
                    'fruit2'=>'blueberry', 
                    'fruit3'=>'apple', 
                    'fruit4'=>'orange');

答案 1

你不能做:

$resulting_array = $array2 + $array1;

?


答案 2

不能直接在关联数组前面附加键值对。

但是,您可以使用联合运算符创建一个新数组,该数组在数组的开头包含新的键值对。结果是一个全新的数组,创建新数组具有O(n)复杂性。+

语法如下。

$new_array = array('new_key' => 'value') + $original_array;

注意:请勿使用array_merge()。array_merge() 将覆盖键,并且不保留数字键。