Home > Backend Development > PHP Problem > How to remove elements from array in php?

How to remove elements from array in php?

青灯夜游
Release: 2023-02-28 18:54:01
Original
1681 people have browsed it

How to delete elements from an array in php? The following article will introduce to you several ways to delete elements from an array in PHP. It has certain reference value. Friends in need can refer to it. I hope it will be helpful to everyone.

How to remove elements from array in php?

Several ways to delete elements from an array in PHP

1. Delete one element, and keep the original index unchanged

Use the unset function, the example is as follows:

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

Output:

Array (
    [0] => a
    [2] => c
)
Copy after login

Using unset does not change the array the original 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"
}
*/
Copy after login

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
?>
Copy after login

Output:

Array (
    [0] => a
    [1] => c
)
Copy after login

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
?>
Copy after login

Output:

Array (
    [1] => b
)
Copy after login
Copy after login

Similar to unset, array_diff will also keep the 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
?>
Copy after login

Output:

Array (
    [1] => b
)
Copy after login
Copy after login

Similar to unset, array_diff_key will also maintain the index.

For more related knowledge, please pay attention to PHP Chinese website! !

The above is the detailed content of How to remove elements from array in php?. For more information, please follow other related articles on the PHP Chinese website!

Related labels:
source:php.cn
Statement of this Website
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
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template