'How to insert an item at the beginning of an array in PHP?
I know how to insert it to the end by:
$arr[] = $item;
But how to insert it to the beginning?
Solution 1:[1]
Use array_unshift($array, $item);
$arr = array('item2', 'item3', 'item4');
array_unshift($arr , 'item1');
print_r($arr);
will give you
Array
(
[0] => item1
[1] => item2
[2] => item3
[3] => item4
)
Solution 2:[2]
In case of an associative array or numbered array where you do not want to change the array keys:
$firstItem = array('foo' => 'bar');
$arr = $firstItem + $arr;
array_merge does not work as it always reindexes the array.
Solution 3:[3]
For an associative array you can just use merge.
$arr = array('item2', 'item3', 'item4');
$arr = array_merge(array('item1'), $arr)
Solution 4:[4]
Insert an item in the beginning of an associative array with string/custom key
<?php
$array = ['keyOne'=>'valueOne', 'keyTwo'=>'valueTwo'];
$array = array_reverse($array);
$array['newKey'] = 'newValue';
$array = array_reverse($array);
RESULT
[
'newKey' => 'newValue',
'keyOne' => 'valueOne',
'keyTwo' => 'valueTwo'
]
Solution 5:[5]
There are two solutions:
- if you have array with keys that matter to you
$new = ['RLG' => array(1,2,3)];
$array = ['s' => array(2,3), 'l' => [], 'o' => [], 'e' => []];
$arrayWithNewAddedItem = array_merge($new, $array);
- if you have an array without any keys.
array_unshift(array, value1);
Solution 6:[6]
Or you can use temporary array and then delete the real one if you want to change it while in cycle:
$array = array(0 => 'a', 1 => 'b', 2 => 'c');
$temp_array = $array[1];
unset($array[1]);
array_unshift($array , $temp_array);
the output will be:
array(0 => 'b', 1 => 'a', 2 => 'c')
and when are doing it while in cycle, you should clean $temp_array after appending item to array.
Solution 7:[7]
Use array_unshift() to insert the first element in an array.
Use array_shift() to remove the first element of an array.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|---|
| Solution 1 | Toby Allen |
| Solution 2 | tihe |
| Solution 3 | pictoru |
| Solution 4 | |
| Solution 5 | Farid shahidi |
| Solution 6 | Arnas Pe?elis |
| Solution 7 | Rohit Gupta |
