Home > Article > Backend Development > PHP deletes the specified key element from the array
In PHP, an array is a very useful data structure that allows us to store a set of values in a variable and operate on it. When using arrays, we often need to add, delete, modify, etc. the keys or values of the array. This article will mainly introduce how to delete the specified key element in the array in PHP.
PHP provides a function called unset(), which can be used to delete specified elements in the array. For example, we can delete an element in the array using the following code:
$my_array = array("apple" => 1, "banana" => 2, "cherry" => 3); unset($my_array["banana"]);
In the above example, we defined an array $my_array with three elements and then used the unset() function to delete the key as The element of "banana". Now, $my_array only has two elements left: "apple" and "cherry".
It should be noted that if we delete an array element, the key of the element will no longer exist in the array. So, when we use count() function to get the number of elements in an array, we should remember that deleted elements are not counted.
In addition to using the unset() function, we can also use PHP's array_splice() function to delete elements in the array. This function deletes one or more elements at a specified position in the array and re-indexes the array.
The following is the sample code to delete a single array element using the array_splice() function:
$my_array = array("apple" => 1, "banana" => 2, "cherry" => 3); array_splice($my_array, array_search("banana", $my_array), 1);
In the above example, we first use the array_search() function to find the element with the key "banana" in position in the array and then use the array_splice() function to remove that element from the array. Note that the second parameter is the starting position of the element to be deleted, and the third parameter is the number of elements to be deleted.
It should be noted that since this function can delete multiple elements and re-index the array, its impact on the array should be carefully considered before use.
In addition to the above two methods, we can also use PHP's array_filter() function to delete the specified key element in the array. The array_filter() function can accept an array as input and return a new array after filtering out elements that do not meet the criteria. Therefore, we can use the array_filter() function to remove the specified key element from the original array and return the remaining elements.
The following is a sample code to delete a single array element using the array_filter() function:
$my_array = array("apple" => 1, "banana" => 2, "cherry" => 3); $key_to_remove = "banana"; $my_array = array_filter($my_array, function($k) use ($key_to_remove) { return $k !== $key_to_remove; }, ARRAY_FILTER_USE_KEY);
In the above example, we defined the original array $my_array and the key $key_to_remove of the element to be removed . We then use the array_filter() function and pass a callback function to filter the array and return the new array.
Note that the use keyword is used in the callback function to pass $key_to_remove to the callback function so that it can be used in the callback function. At the same time, we use the ARRAY_FILTER_USE_KEY constant to tell PHP that we want to filter the array by key.
Summary
The above are three methods to delete specified key elements in PHP arrays, namely using the unset() function, array_splice() function and array_filter() function. When using them, you should remember that they will have different effects on the array and choose the method that suits you. At the same time, remember to promptly update other parts of the code that use the array after deleting the array element to avoid errors or unnecessary problems.
The above is the detailed content of PHP deletes the specified key element from the array. For more information, please follow other related articles on the PHP Chinese website!