In PHP, array is a very common data type that can store different types of data, such as strings, values, objects, etc. But sometimes, we need to remove some unnecessary elements or keys from the array. In this article, we will learn how to remove unwanted array elements in PHP.
PHP’s unset function can completely remove elements or keys from the array. This function can accept one or more parameters, each parameter is a key of the array. If the specified key exists in the array, then when the key is removed, the corresponding element is also removed. Here is a simple example:
$arr = array('apple' => 1, 'banana' => 2, 'orange' => 3); unset($arr['banana']); print_r($arr);
Output:
Array ( [apple] => 1 [orange] => 3 )
In the above example, we removed the array by callingunset($arr['banana'])
The element whose middle key is 'banana'. Finally, we output the modified array.
But it should be noted that if we use the unset function to remove an element from the array, the key name will not be reset. If we add an element to the array in the future, the new element will be added after the original key value.
PHP’s array_diff function can return a different set of elements from one array that are not in another array. We can use this function to remove unnecessary elements. Here is an example:
$arr1 = array('apple', 'banana', 'orange', 'grape'); $arr2 = array('banana', 'grape'); $result = array_diff($arr1, $arr2); print_r($result);
Output:
Array ( [0] => apple [2] => orange )
In the above example,array_diff($arr1, $arr2)
returns the items in $arr1 that are not in $arr2 Elements, that is, elements with key values 'apple' and 'orange'.
It should be noted thatarray_diff
will be sorted according to the key of the first array and return the array whose key value has not been modified, that is, the original array.
PHP's array_filter function can use the callback function to filter the elements in the array and return a new array. The following is an example:
$arr = array( 'apple' => 1, 'banana' => 2, 'orange' => 0, 'grape' => 3 ); $result = array_filter($arr, function($value) { return $value > 0; }); print_r($result);
Output:
Array ( [apple] => 1 [banana] => 2 [grape] => 3 )
In the above example, we use a callback function to filter out all elements with key values greater than 0 in the array, and then return a new array. During the filtering process, the key value remains in its original state and will not be reset.
PHP’s array_splice function can be used to delete certain elements from an array. The following is an example:
$arr = array('apple', 'banana', 'orange', 'grape'); array_splice($arr, 1, 2); print_r($arr);
Output:
Array ( [0] => apple [3] => grape )
In the above example, we used the array_splice function to delete the elements from index 1 to index 2, and finally we output the modified array.
It should be noted that the key name has not been reset after deletion. If an element is added to the array later, the new element will be added after the original key.
Summary:
Removing unnecessary elements is a very common operation in PHP. By using functions such as unset, array_diff, array_filter and array_splice, we can easily complete this task. According to actual needs, choosing the appropriate function to remove unnecessary elements in the array can make our code more concise and easier to maintain.
The above is the detailed content of php removes unwanted arrays. For more information, please follow other related articles on the PHP Chinese website!