Home > Article > Backend Development > How to remove a key value from an array in php
In PHP, array is a very common data type that can be used to store a set of related data. Usually, we need to delete a key value from an array in order to process or display the data. This article will introduce how to use PHP to remove a key value from an array.
PHP provides a small utility function unset()
, which can delete the element corresponding to the specified key value in the array . For example, the following code snippet:
<?php $array = array('a' => 1, 'b' => 2, 'c' => 3); unset($array['b']); print_r($array); ?>
Running result:
Array ( [a] => 1 [c] => 3 )
As can be seen from the running result, the specified key value in the array can be deleted using the unset()
function. This method is very simple, but it has the disadvantage that it completely removes the key value from the array. If we need to preserve the key value and set its value to null
, we need to use other methods.
Function in PHP array_diff_key()
can be used to return the difference of an array, which contains items that are not in other arrays The specified key value in . So we can use the array_diff_key()
function to delete a key value from the original array, such as the following code snippet:
<?php $array = array('a' => 1, 'b' => 2, 'c' => 3); $result = array_diff_key($array, array('b' => 0)); print_r($result); ?>
Running result:
Array ( [a] => 1 [c] => 3 )
From running As can be seen from the results, using the array_diff_key()
function can delete the specified key value in the original array, and reorganize the remaining key values and corresponding values into a new array. Compared to the unset()
function, this method can be used to retain the key values in the original array.
Function in PHP array_filter()
can be used to filter array elements, it accepts a callback function as a parameter, Used to filter elements in an array. We can customize a callback function to delete the specified key value. For example, the following code segment:
<?php $array = array('a' => 1, 'b' => 2, 'c' => 3); $result = array_filter($array, function ($key) { return $key != 'b'; }, ARRAY_FILTER_USE_KEY); print_r($result); ?>
Running result:
Array ( [a] => 1 [c] => 3 )
As can be seen from the running result, the specified key value in the original array can be deleted using the array_filter()
function , and reorganize the remaining key values and corresponding values into a new array. Compared with the array_diff_key()
function, this method can be used to implement a more flexible key value deletion operation.
Summary
This article introduces three methods to delete specified key values in an array in PHP, including the unset()
function, array_diff_key()
function and the array_filter()
function. Each of these methods has its own advantages and disadvantages and can be selected and used according to actual needs. It should be noted that when deleting array elements, special attention should be paid to the order of array indexes to avoid affecting the results of other operations.
The above is the detailed content of How to remove a key value from an array in php. For more information, please follow other related articles on the PHP Chinese website!