Q. How do I remove a specific element from an array using PHP.
In this tutorial, you will learn two PHP unset() and array_splice() methods to remove specific array elements.
Using PHP unset() Function
Use the PHP unset() function to delete an element from an array.
Basically it is used to unset any variable in PHP. This function accept variable as argument and unset it.
Example:
1 2 3 4 | <?php $arr = array("a" => "apple", "b" => "ball", "c" => "cat"); unset($arr["b"]); ?> |
Output:
array("a" => "Apple", "c" => "Cat")
Another Example:
1 2 3 4 5 | <?php $arr = array(1, 2, 3, 4, 5); unset($arr[3]); print_r($arr) ?> |
Output:
Array ( [0] => 1 [1] => 2 [2] => 3 [4] => 5 )
You can see the result array is not indexed. To overcome from this condition, you can use array_splice() PHP function described below.
Using PHP array_splice() Function
You can also use array_splice() function to remove specific array element. This function also can be used to replace array elements by passing array with update values.
This function takes three parameters, an array, offset (where to start), and length (number of elements to be removed).
Here is an example with array_splice() function:
1 2 3 4 5 | <?php $arr = array(1, 2, 3, 4, 5); array_splice($arr, 2, 2); print_r($arr) ?> |
Output:
Array ( [0] => 1 [1] => 2 [2] => 5 )
You can see that the result array is re-indexed.
Conclusion
In this tutorial, you learned two PHP functions used to remove specific element from an array.