PHP delete elements in array example program_PHP tutorial

WBOY
Release: 2016-07-13 17:00:23
Original
898 people have browsed it

Array quantum mechanics is a very useful array type in PHP. Below I will summarize some methods to delete array elements. To delete elements in an array, the first idea is to use the unset function. It can indeed be deleted, but Problems may occur when operating the array later.

Illustrate with the following example:

The code is as follows Copy code
 代码如下 复制代码

$arr = array(0, 1, 2, 3, 4);
$index = 2;
unset($arr[$index]);
echo count($arr);

if (empty($arr[$index])) {
    echo "arr[$index] is empty";
}

print_r($arr);

输出为:
4
arr[2] is empty
Array([0] => 0 [1] => 1 [3] => 3 [4] =>

$arr = array(0, 1, 2, 3, 4);

$index = 2;

unset($arr[$index]);

echo count($arr);

if (empty($arr[$index])) {

echo "arr[$index] is empty";

}

 代码如下 复制代码

$arr = array(0, 1, 2, 3, 4);
$rtn = array_splice($arr, 2, 1);
echo count($arr);
print_r($arr);
print_r($rtn);

输出为:
4
Array
([0] => 0 [1] => 1 [2] => 3 [3] => 4)
Array([0] =>

print_r($arr);


The output is:

4
 代码如下 复制代码

1、
$arr = array(0, 1, 2, 3, 4);
array_splice($arr, 0, 1);

2、
$arr = array(0, 1, 2, 3, 4);
$arr = array_splice($arr, 1);

arr[2] is empty

Array([0] => 0 [1] => 1 [3] => 3 [4] =>

4) From the above output, you can see that the length of the array is normal, but the subscript remains the same, so there will be problems when obtaining elements according to the subscript. In addition, this method is safe for arrays in the form of key-value.

How to delete elements safely? You can use the array_splice function. The purpose of array_splice() is to delete a specified series of elements from the original array and replace them with other values ​​(if specified). The return value is the deleted element.

The code is as follows Copy code
 代码如下 复制代码

 $fruits = array("apple","banana","orange","pear"); 

$fruit = array_pop($fruits); 

 //$fruits = array("apple","banana","orange"); 

//$fruit = "pear";

$arr = array(0, 1, 2, 3, 4); $rtn = array_splice($arr, 2, 1); echo count($arr); print_r($arr); print_r($rtn); The output is: 4 Array ([0] => 0 [1] => 1 [2] => 3 [3] => 4) Array([0] =>
2) If you want to get the array after deleting the first element, there are two methods:
The code is as follows Copy code
1, $arr = array(0, 1, 2, 3, 4); array_splice($arr, 0, 1); 2, $arr = array(0, 1, 2, 3, 4); $arr = array_splice($arr, 1);
There is also the array_shift() function that deletes the first element in the array and returns the value of the deleted element. The relative array_pop() function deletes the last element in the array. The array_pop() function removes and returns the last element of the array. Its form is: mixed array_pop(aray target_array); The following example removes the last state from the $states array:
The code is as follows Copy code
$fruits = array("apple","banana","orange","pear"); $fruit = array_pop($fruits); //$fruits = array("apple","banana","orange"); //$fruit = "pear";

array_filter() deletes empty elements in the array


Function name: array_filter()
Calling method: array_filter($array)
Parameter description: $array is the object of the operation, we will delete the empty elements
Example:

Print_r($array); ?>
The code is as follows
 代码如下 复制代码

$array = ('a' => "abc", 'b' => "bcd",'c' =>"cde",'d' =>"def",'e'=>"");
    array_filter($array);
    echo "

";
    print_r($array);
?>
结果:
Array (

     [a] => abc

     [b] => bcd

     [c] => cde

    [d] => def

   )

Copy code


$array = ('a' => "abc", 'b' => "bcd",'c' =>"cde",'d' =>"def",'e'=> ""); Array_filter($array);
 代码如下 复制代码


$array = array('1', '2', '3', '4', '5');

$del_value = 3;
unset($array[array_search($del_value , $array)]);//利用unset删除这个元素

print_r($array);

输出

array('1', '2', '4', '5');

echo "
";
Result: Array (

[a] => abc [b] => bcd [c] => cde [d] => def )
After using several functions, array_search() is more practical
The array_search() function is the same as in_array(), searching for a key value in the array. If the value is found, the key of the matching element is returned. If not found, return false
The code is as follows Copy code
$array = array('1', '2', '3', '4', '5'); $del_value = 3; unset($array[array_search($del_value, $array)]);//Use unset to delete this element print_r($array); Output array('1', '2', '4', '5'); http://www.bkjia.com/PHPjc/631257.htmlwww.bkjia.comtruehttp: //www.bkjia.com/PHPjc/631257.htmlTechArticleArray quantum mechanics is a very useful array type in PHP. Let me summarize some methods for deleting array elements. There is a way to delete elements in an array. The first idea is to use the unset function, which...
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