Home  >  Article  >  Backend Development  >  How to remove elements from an array in php?

How to remove elements from an array in php?

coldplay.xixi
coldplay.xixiOriginal
2020-07-23 13:23:062567browse

php method to remove elements from an array: 1. Use the unset function to delete an element and keep the original index unchanged; 2. Use the [array_splice] function to delete an element without keeping the index; 3. Use the [array_diff] function to delete multiple elements by value, keeping the index.

How to remove elements from an array in php?

php method to remove elements from an array:

1. Delete an element and keep it original The index remains unchanged

Use the unset function, the example is as follows:

<?php
  $array = array(0 => "a", 1 => "b", 2 => "c");
  unset($array[1]);
        //↑ 你想删除的key
?>

Output:

Array (
    [0] => a
    [2] => c
)

Using unset does not change the original value of the array There is an index. If you plan to rearrange the index (let the index start from 0 and be continuous), you can use the array_values function:

$array = array_values($array);
/*
输出
array(2) 
{ [0]=> string(1) "a" [1]=> 
string(1) "c"}
*/

2. Delete an element without keeping the index

Use the array_splice function, the example is as follows:

<?php
  $array = array(0 => "a", 1 => "b", 2 => "c");
  array_splice($array, 1, 1);
            //↑ 你想删除的元素的Offset
?>

Output:

Array (
    [0] => a
    [1] => c
)

3. Delete multiple elements by value, keeping the index

Use the array_diff function, the example is as follows:

<?php
  $array = array(0 => "a", 1 => "b", 2 => "c");
  $array = array_diff($array, ["a", "c"]);
               //└────────┘→ 你想删除的数组元素值values
?>

Output:

Array (
    [1] => b
)

Similar to unset, array_diff will also be maintained index.

4. Delete multiple elements by key and keep the index

Use the array_diff_key function, the example is as follows:

<?php
 
  $array = array(0 => "a", 1 => "b", 2 => "c");
  $array = array_diff_key($array, [0 => "xy", "2" => "xy"]);
                  //↑      ↑ 你想删除的数组键keys
?>

Output:

Array (
    [1] => b
)

Similar to unset, array_diff_key will also maintain the index.

Related learning recommendations: PHP programming from entry to proficiency

The above is the detailed content of How to remove elements from an array in php?. 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