Home > Article > Backend Development > php remove specific values from array
When developing with PHP, array operation is a frequently used function. When operating on arrays, we often encounter situations where we need to remove specific values in the array. This article will share how to remove specific values from an array using PHP.
The unset function in PHP can be used to delete elements in an array. We can first use foreach to loop through the array, and then use the unset function to delete specific values in the array. The following is a sample code:
$arr = array('apple', 'banana', 'cherry', 'apple', 'orange'); $val = 'apple'; foreach($arr as $key => $value) { if($value == $val) { unset($arr[$key]); } } print_r($arr);
The above code can remove all elements with a value of 'apple' in the array, and the output result is:
Array ( [1] => banana [2] => cherry [4] => orange )
The array_diff function in PHP can be used to calculate the difference of arrays. We can pass the original array and the specific value that needs to be removed as parameters into the array, and return the difference result. The following is a sample code:
$arr = array('apple', 'banana', 'cherry', 'apple', 'orange'); $val = array('apple'); $result = array_diff($arr, $val); print_r($result);
The above code can also remove all elements with a value of 'apple' in the array, and the output result is:
Array ( [1] => banana [2] => cherry [4] => orange )
The array_filter function in PHP can use a callback function to filter elements in an array and return a new array. In the callback function, we can compare each array element and return TRUE or FALSE. The following is a sample code:
$arr = array('apple', 'banana', 'cherry', 'apple', 'orange'); $val = 'apple'; $result = array_filter($arr, function($value) use($val) { return $value != $val; }); print_r($result);
The above code can also remove all elements with a value of 'apple' in the array, and the output result is:
Array ( [1] => banana [2] => cherry [4] => orange )
In the above example code, although the specified value in the array is successfully removed, the key values of the array elements are not rearranged. We can rearrange the key values of array elements using the array_values function. The following is the sample code:
$arr = array('apple', 'banana', 'cherry', 'apple', 'orange'); $val = 'apple'; $result = array_values(array_filter($arr, function($value) use($val) { return $value != $val; })); print_r($result);
The output result is:
Array ( [0] => banana [1] => cherry [2] => orange )
Summary: The above are several methods to remove specific values from arrays in PHP. In actual development, we can choose which method to use based on specific needs. For example, when the elements that need to be deleted are few and irregular, you can use the unset function; when the elements that need to be deleted are large and regular, you can use the array_diff function; when you need to make complex judgments on array elements, you can use the array_filter function. . Finally, it is recommended that everyone pay attention to ensure the efficiency and safety of the code when using functions related to array operations.
The above is the detailed content of php remove specific values from array. For more information, please follow other related articles on the PHP Chinese website!