Home >Backend Development >PHP Problem >How to delete elements of array in php? Several ways to share
Manipulating arrays is a very common task in PHP. We often need to delete one or more elements from an array. Although deleting array elements is a simple task in development, how to delete array elements correctly is a problem that requires us to handle it carefully.
There are several ways to delete array elements in PHP, and this article will introduce these methods in detail.
The most common method is to use the unset
function. This function deletes one or more array elements at the specified index. The following is a sample code:
$fruits = array("apple", "banana", "orange"); unset($fruits[1]); // 删除下标为 1 的元素 print_r($fruits);
The above code will output the following results:
Array ( [0] => apple [2] => orange )
Use the unset
function. It should be noted that if you want to delete by subscript element, be sure to ensure that the subscript exists. Otherwise, a Notice error will result.
array_splice
The function can delete elements in the array more flexibly. This function removes a specified number of elements from an array and replaces them with new elements. To use this function, you need to pass three parameters: the array to be operated on, the starting index of the element to be deleted, and the number of elements to be deleted. If you want to add new elements, you need to pass one or more new elements as the third parameter.
The following is a sample code:
$fruits = array("apple", "banana", "orange"); array_splice($fruits, 1, 1); // 从下标 1 处开始删除一个元素 print_r($fruits);
The above code will output the following results:
Array ( [0] => apple [1] => orange )
If you want to delete and add elements at the same time, you need to add the element as The fourth parameter is passed to the array_splice
function.
The following is a sample code:
$fruits = array("apple", "banana", "orange"); array_splice($fruits, 1, 1, array("peach", "kiwi")); // 从下标 1 处开始删除一个元素,并添加新元素 print_r($fruits);
The above code will output the following results:
Array ( [0] => apple [1] => peach [2] => kiwi [3] => orange )
array_filter
The function removes all null and false values from the array. This function receives an array as parameter and returns a new filtered array. The following is a sample code:
$fruits = array("apple", "", "banana", false, "orange"); $fruits = array_filter($fruits); print_r($fruits);
The above code will output the following results:
Array ( [0] => apple [2] => banana [4] => orange )
If you want to delete a key of an array, You can use the unset
function. But it should be noted that this method can only delete a single key. If you want to delete multiple keys, you must call the unset
function multiple times.
The following is a sample code:
$fruits = array("apple" => 2, "banana" => 1, "orange" => 3); unset($fruits["banana"]); // 删除键为 "banana" 的元素 print_r($fruits);
The above code will output the following results:
Array ( [apple] => 2 [orange] => 3 )
Another method is to use the array_diff_key
function, This function can delete one or more keys in an array. The following is a sample code:
$fruits = array("apple" => 2, "banana" => 1, "orange" => 3); $fruits = array_diff_key($fruits, array("banana" => "")); // 删除键为 "banana" 的元素 print_r($fruits);
The above code will output the following results:
Array ( [apple] => 2 [orange] => 3 )
This article introduces several methods to delete array elements in PHP. Includes the unset
function, the array_splice
function, the array_filter
function, the unset
function, and the array_diff_key
function. Each method has its applicable scenarios, and you need to decide which method to use based on the actual situation.
The above is the detailed content of How to delete elements of array in php? Several ways to share. For more information, please follow other related articles on the PHP Chinese website!