PHP
Insert an Element at a Specific Position in an Array
Master inserting new elements into a PHP array at any desired numeric index, shifting existing elements and maintaining array structure efficiently using `array_splice`.
<?php
function insertIntoArray(array &$array, int $position, $element) {
array_splice($array, $position, 0, $element);
}
$numbers = [1, 2, 3, 4, 5];
echo "Original Array: ";
print_r($numbers);
// Insert '99' at index 2
insertIntoArray($numbers, 2, 99);
echo "Array after inserting 99 at index 2: ";
print_r($numbers);
/* Output:
Original Array: Array ( [0] => 1 [1] => 2 [2] => 3 [3] => 4 [4] => 5 )
Array after inserting 99 at index 2: Array ( [0] => 1 [1] => 2 [2] => 99 [3] => 3 [4] => 4 [5] => 5 )
*/
$fruits = ['apple', 'banana', 'grape'];
echo "Original Fruits Array: ";
print_r($fruits);
// Insert 'orange' at the beginning (index 0)
insertIntoArray($fruits, 0, 'orange');
echo "Fruits after inserting 'orange' at index 0: ";
print_r($fruits);
/* Output:
Original Fruits Array: Array ( [0] => apple [1] => banana [2] => grape )
Fruits after inserting 'orange' at index 0: Array ( [0] => orange [1] => apple [2] => banana [3] => grape )
*/
How it works: This snippet showcases the flexible `array_splice()` function to insert one or more elements into an array at a specific numerical position. By setting the `length` parameter to `0`, `array_splice()` inserts new elements without removing any existing ones, effectively shifting subsequent elements. This is extremely useful when you need precise control over element placement within an array, such as for ordering lists or injecting dynamic data into a predefined sequence.