by Sai gowtham

How to remove the element from an array by value in PHP

To remove the element from an array by value, we can use the combination of array_search() and unset() functions in PHP.

Here is an example, that removes the second element "green" from the colors array by value.

<?php
$colors = array("red", "green", "yellow", "orange");

if (($key = array_search("green", $colors)) !== false) {
    unset($colors[$key]);
}

print_r($colors)
?>

Output:

Array
(
    [0] => red
    [2] => yellow
    [3] => orange
)

The unset() function doesn’t re-index the array keys, if you want to re-index it then you can use the array_values() function after unset().

<?php
$colors = array("red", "green", "yellow", "orange");

if (($key = array_search("green", $colors)) !== false) {
    unset($colors[$key]);
}

print_r(array_values($colors))
?>

Similarly, we can also use the array_diff() function like this to remove it.

$colors = array("red", "green", "yellow", "orange");

$newArray = array_diff($colors, array("green"));

print_r($newArray)

You can also use the array_diff() function to remove multiple elements by using value.

$colors = array("red", "green", "yellow", "orange");

$newArray = array_diff($colors, array("green", "yellow"));

print_r($newArray)

Note: The array_diff() function creates a new array by preserving the original array, where the first solution modifies the original array.

Top Udemy Courses

JavaScript - The Complete Guide 2020 (Beginner + Advanced)
JavaScript - The Complete Guide 2020 (Beginner + Advanced)
45,614 students enrolled
52 hours of video content
View Course
React - The Complete Guide (incl Hooks, React Router, Redux)
React - The Complete Guide (incl Hooks, React Router, Redux)
284,472 students enrolled
40 hours of video content
View Course
Vue JS 2 - The Complete Guide (incl. Vue Router & Vuex)
Vue JS 2 - The Complete Guide (incl. Vue Router & Vuex)
130,921 students enrolled
21 hours of video content
View Course