When developing with PHP, array is a data type we often use. Arrays can store multiple values and are easy to use. But in the actual development process, we may need to remove a specified value from the array. So, how to achieve it?
Method 1: Use the unset function
We can use PHP's unset function to remove a certain value in the array. The syntax is as follows:
unset($array[key]);
Among them, $array means The array to be operated on, where key represents the key value of the value to be removed.
The example is as follows:
$array = array('apple', 'banana', 'cherry', 'date'); unset($array[2]); print_r($array);
The output result is as follows:
Array ( [0] => apple [1] => banana [3] => date )
In the above code, we use the unset function to remove the element cherry with key 2 in the array.
It should be noted that using the unset function will modify the original array, which may lead to the reordering of the array key values, so use it with caution.
Method 2: Use the array_diff function
Another way to remove a specified value in an array is to use PHP's array_diff function. This function can compare the difference between two or more arrays. Its syntax is as follows:
array_diff($array, array(value1,value2,..));
Among them, $array represents the array to be operated on, and value1, value2,.. represents the value to be removed.
The example is as follows:
$array = array('apple', 'banana', 'cherry', 'date'); $result = array_diff($array, array('cherry')); print_r($result);
The output result is as follows:
Array ( [0] => apple [1] => banana [3] => date )
In the above code, we use the array_diff function to find the difference between the original array and an array containing only cherry, and remove The element whose value is cherry in the array.
It should be noted that using the array_diff function will return a new array, and the original array will not change.
Method 3: Use array_filter function
We can also use PHP’s array_filter function to remove a specified value in the array. This function can filter elements in the array according to the specified callback function. Its syntax is as follows:
array_filter($array, $callback);
where $array represents the array to be operated on, and $callback is a callback function used to filter elements in the array.
The example is as follows:
$array = array('apple', 'banana', 'cherry', 'date'); $result = array_filter($array, function($value){ return ($value !== 'cherry'); }); print_r($result);
The output result is as follows:
Array ( [0] => apple [1] => banana [3] => date )
In the above code, we use the array_filter function, pass in a callback function, and filter out the values in the array that are cherry Elements.
It should be noted that using the array_filter function will return a new array, and the original array will not change.
Conclusion
The above are three ways to remove a specified value in an array in PHP: using the unset function, using the array_diff function and using the array_filter function. In actual development, we can choose the appropriate method to use according to the specific situation. It should be noted that when using the unset function, the issue of reordering the array key values must be carefully considered.
The above is the detailed content of How to remove a specified value from a php array. For more information, please follow other related articles on the PHP Chinese website!