Home  >  Article  >  Backend Development  >  PHP deletes the specified key element from the array

PHP deletes the specified key element from the array

王林
王林Original
2023-05-07 15:46:09751browse

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.

  1. unset function

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.

  1. array_splice function

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.

  1. array_filter function

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!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn