PHP程序在关联数组的开头添加项目
在PHP,关联数组是索引不需要像索引数组那样严格顺序的数组类型。通常在现有关联数组中添加一个新元素,它将被附加到该数组的末尾。
例子:
1, 'two' => 2);
// New element
$arr['zero'] = 0;
// Final array
print_r($arr);
?>
输出:
Array
(
[one] => 1
[two] => 2
[zero] => 0
)
因此,不能直接在关联数组的开头添加新元素,但可以将现有数组附加到新数组的末尾,其中第一个元素是新元素。
这意味着首先在开头添加新元素,新元素需要作为第一个元素放入空数组中,然后该数组需要与现有数组合并。在PHP,有两种方法可以合并数组,它们是 array_merge()函数和使用数组 union(+)运算符。
在array_merge()函数的情况下,如果两个数组具有相同的键,则在结果数组中考虑与后面数组中的键对应的值。但是在索引数组的情况下,元素只是简单地被追加,并对结果数组中的所有元素进行重新索引。
句法:
array array_merge( $arr1, $arr2 )
在数组 union(+)运算符的情况下,如果两个数组具有相同的键,则在结果数组中考虑与第一个数组中的键对应的值,这也适用于索引数组,如果两个数组具有公共索引的元素,则结果数组中只考虑第一个数组中的元素。
句法:
$arr3 = $arr1 + $arr2
程序: PHP程序,用于在关联数组的开头添加新项。
1, 'two' => 2, 'three' => 3);
// New element to be added at 'zero' => 0
// Create an array using the new element
$temp = array('zero' => 0);
// Append the $temp in the beginning of $arr
// Using array union(+) operator
$arr2 = $temp + $arr;
echo "Result of array union(+) : ";
print_r($arr2);
// Using array_merge() function
$arr3 = array_merge($temp, $arr);
echo "\n" . "Result of array_merge() : ";
print_r($arr3);
?>
输出:
Result of array union(+) : Array
(
[zero] => 0
[one] => 1
[two] => 2
[three] => 3
)
Result of array_merge() : Array
(
[zero] => 0
[one] => 1
[two] => 2
[three] => 3
)