Home >Backend Development >PHP Problem >How to delete elements in an array in php
There are many ways to delete specified elements in an array in PHP. Here are a few common methods.
unset function
The unset function can delete the specified element in the array or the entire array.
$array = array(1, 2, 3, 4, 5); unset($array[2]); // 删除数组中下标为 2 的元素 print_r($array); // 输出:Array ( [0] => 1 [1] => 2 [3] => 4 [4] => 5 )
array_splice function
array_splice function can delete the elements in the specified interval in the array and return the deleted element array.
$array = array(1, 2, 3, 4, 5); $removed = array_splice($array, 2, 1); // 从下标为 2 的元素开始删除 1 个元素 print_r($array); // 输出:Array ( [0] => 1 [1] => 2 [2] => 4 [3] => 5 ) print_r($removed); // 输出:Array ( [0] => 3 )
array_diff function
array_diff function can return the difference set of two arrays, thereby achieving the effect of deleting the specified element.
$array = array(1, 2, 3, 4, 5); $removed = array_diff($array, array(3)); // 删除值为 3 的元素 print_r($removed); // 输出:Array ( [0] => 1 [1] => 2 [3] => 4 [4] => 5 )
array_filter function
array_filter function can filter the elements in the array based on the return value of the callback function, thereby achieving the effect of deleting the specified element.
// 根据键值来判断是否删除元素 $array = array(1, 2, 3, 4, 5); $removed = array_filter($array, function($val) { return $val !== 3; }); print_r($removed); // 输出:Array ( [0] => 1 [1] => 2 [3] => 4 [4] => 5 ) // 根据键名来判断是否删除元素 $array = array('a' => 1, 'b' => 2, 'c' => 3); $removed = array_filter($array, function($key) { return $key !== 'c'; }, ARRAY_FILTER_USE_KEY); print_r($removed); // 输出:Array ( [a] => 1 [b] => 2 )
The above are several commonly used methods to delete array elements. You need to choose according to the actual situation when using them.
The above is the detailed content of How to delete elements in an array in php. For more information, please follow other related articles on the PHP Chinese website!