array ( 0 => 'index.php', 1 => 'PHP Manual', ), 'head' => array ( 0 => 'UTF-8', 1 => 'en', ), 'this' => array ( 0 => 'function.array-unshift.php', 1 => 'array_unshift', ), 'up' => array ( 0 => 'ref.array.php', 1 => 'Array Functions', ), 'prev' => array ( 0 => 'function.array-unique.php', 1 => 'array_unique', ), 'next' => array ( 0 => 'function.array-values.php', 1 => 'array_values', ), 'alternatives' => array ( ), 'source' => array ( 'lang' => 'en', 'path' => 'reference/array/functions/array-unshift.xml', ), ); $setup["toc"] = $TOC; $setup["toc_deprecated"] = $TOC_DEPRECATED; $setup["parents"] = $PARENTS; manual_setup($setup); ?>
(PHP 4, PHP 5, PHP 7, PHP 8)
array_unshift — Prepend one or more elements to the beginning of an array
array_unshift() prepends passed elements to the front
of the array
. Note that the list of elements is
prepended as a whole, so that the prepended elements stay in the same
order. All numerical array keys will be modified to start counting from
zero while literal keys won't be changed.
Note:
Resets array's internal pointer to the first element.
array
The input array.
values
The values to prepend.
Returns the new number of elements in the array
.
Version | Description |
---|---|
7.3.0 | This function can now be called with only one parameter. Formerly, at least two parameters have been required. |
Example #1 array_unshift() example
<?php
$queue = [
"orange",
"banana"
];
array_unshift($queue, "apple", "raspberry");
var_dump($queue);
?>
The above example will output:
array(4) { [0] => string(5) "apple" [1] => string(9) "raspberry" [2] => string(6) "orange" [3] => string(6) "banana" }
Example #2 Usage with associative arrays
If one associative array is prepended to another associative array, the prepended array is numerically indexed into the former array.
<?php
$foods = [
'apples' => [
'McIntosh' => 'red',
'Granny Smith' => 'green',
],
'oranges' => [
'Navel' => 'orange',
'Valencia' => 'orange',
],
];
$vegetables = [
'lettuce' => [
'Iceberg' => 'green',
'Butterhead' => 'green',
],
'carrots' => [
'Deep Purple Hybrid' => 'purple',
'Imperator' => 'orange',
],
'cucumber' => [
'Kirby' => 'green',
'Gherkin' => 'green',
],
];
array_unshift($foods, $vegetables);
var_dump($foods);
The above example will output:
array(3) { [0] => array(3) { 'lettuce' => array(2) { 'Iceberg' => string(5) "green" 'Butterhead' => string(5) "green" } 'carrots' => array(2) { 'Deep Purple Hybrid' => string(6) "purple" 'Imperator' => string(6) "orange" } 'cucumber' => array(2) { 'Kirby' => string(5) "green" 'Gherkin' => string(5) "green" } } 'apples' => array(2) { 'McIntosh' => string(3) "red" 'Granny Smith' => string(5) "green" } 'oranges' => array(2) { 'Navel' => string(6) "orange" 'Valencia' => string(6) "orange" } }