php 删除数组中的元素实例程序
发布:smiling 来源: PHP粉丝网 添加日期:2014-01-17 11:06:42 浏览: 评论:0
在php中数组量子力学个非常好用的数组类型,下面我来总结一些删除数组元素的各种方法,删除数组中的元素,第一想法是使用unset函数,它确实可以删除,但是可能会在后面操作该数组的时候出现问题。
通过下面的例子来说明,代码如下:
- $arr = array(0, 1, 2, 3, 4);
- $index = 2;
- unset($arr[$index]);
- echo count($arr);
- if (emptyempty($arr[$index])) {
- echo "arr[$index] is empty";
- }
- print_r($arr);
- /*
- 输出为:
- 4
- arr[2] is empty
- Array([0] => 0 [1] => 1 [3] => 3 [4] =>
- */
从上面的输出结果可以看到数组的长度是正常的,但是下标还是保持原来的,所以按照下标去获取元素就会出问题,另外此方法对key-value形式的数组是安全的。
如何安全的删除元素呢?可以使用array_splice函数。array_splice()的用途是删除原始数组中指定的一系列元素,并用其他值代替(如果指定),返回值是被删除的元素,代码如下:
- $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] =>
- */
如果想获取删除首位元素后的数组,则可以有两种方法,代码如下:
- //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);
还有array_shift() 函数删除数组中的第一个元素,并返回被删除元素的值,相对的array_pop() 函数删除数组中的最后一个元素.
array_pop()函数删除并返回数组的最后一个元素,其形式为:
mixed array_pop(aray target_array);
下面的例子从$states数组删除了最后的一个,代码如下:
- $fruits = array("apple","banana","orange","pear");
- fruit = array_pop($fruits);
- //$fruits = array("apple","banana","orange");
- /$fruit = "pear";
array_filter()删除数组中的空元素
函数名:array_filter()
调用方式:array_filter($array)
参数说明:$array 是操作的对象,我们将删除其中的空元素
实例代码如下:
- <?php
- $array = ('a' => "abc", 'b' => "bcd",'c' =>"cde",'d' =>"def",'e'=>"");
- array_filter($array);
- echo "<pre>";
- print_r($array);
- ?>
- /*结果:
- Array (
- [a] => abc
- [b] => bcd
- [c] => cde
- [d] => def
- )
- */
几个函数用下来觉得array_search()比较实用
array_search() 函数与 in_array() 一样,在数组中查找一个键值,如果找到了该值,匹配元素的键名会被返回,如果没找到,则返回 false,代码如下:
- $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');
Tags: php 删除 数组 元素
- 上一篇:php数组保存文本与文本反编成数组
- 下一篇:php 二维数组按指定的键值排序
相关文章
- ·php in_array 语法(2013-11-12)
- ·PHP中数组定义的几种方法(2013-11-13)
- ·php session 预定义数组(2013-11-13)
- ·php 读取多维数组方法(2013-11-28)
- ·php 数组之删除空数组程序(2013-11-30)
- ·php删除数组中的空值或指定值操作(2013-11-30)
- ·php对数组元素去重复值(2013-12-03)
- ·php中向数组中插入一元素程序代码(2014-01-03)
- ·php中数组的搜索程序代码(2014-01-06)
- ·php二维数组循环程序代码(2014-01-06)
- ·php数组删除元素各种方法总结(2014-01-06)
- ·php 数组排序各种方法总结(2014-01-06)
- ·PHP数组的高级遍历和操作处理方法(2014-01-07)
- ·PHP获取数组中某元素的位置实例(2014-01-07)
- ·PHP取数组第一个元素与删除数组实例(2014-01-07)
- ·php将数组变量保存到文件(2014-01-08)

推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)