PHP中unset,array_splice删除数组中元素的区别


Posted in PHP onJuly 28, 2014

如果要在某个数组中删除一个元素,可以直接用的unset,但是数组的索引不会重排:

<?php 
$arr = array('a','b','c','d');
unset($arr[1]);
print_r($arr);
?>

结果是:

Array ( [0] => a [2] => c [3] => d )
 
那么怎么才能做到缺少的元素会被填补并且数组会被重新索引呢?答案是array_splice():

<?php 
$arr = array('a','b','c','d'); 
array_splice($arr,1,1); 
print_r($arr); 
?>

结果是:

Array ( [0] => a [1] => c [2] => d )
 
删除数组中特定元素

<?php
$arr2 = array(1,3, 5,7,8);
foreach ($arr2 as $key=>$value)
{
  if ($value === 3)
    unset($arr2[$key]);
}
var_dump($arr2);
?>

补充删除空数组

实例:

<?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_splice()函数删除的话,数组的索引值也变化了。
unset()函数删除的话,数组的索引值没有变化。

PHP 相关文章推荐
用PHP中的 == 运算符进行字符串比较
Nov 26 PHP
PHP 文本文章分页代码 按标记或长度(不涉及数据库)
Jun 07 PHP
通过5个php实例细致说明传值与传引用的区别
Aug 08 PHP
ThinkPHP利用PHPMailer实现邮件发送实现代码
Sep 26 PHP
取得单条网站评论以数组形式进行输出
Jul 28 PHP
Yii使用find findAll查找出指定字段的实现方法
Sep 05 PHP
PHP图片库imagemagick安装方法
Sep 23 PHP
PHP多维数组转一维数组的简单实现方法
Dec 23 PHP
简述php环境搭建与配置
Dec 05 PHP
yii2使用gridView实现下拉列表筛选数据
Apr 10 PHP
PHP魔术方法之__call与__callStatic使用方法
Jul 23 PHP
PHP按符号截取字符串的指定部分的实现方法
Sep 10 PHP
PHP常用数组函数介绍
Jul 28 #PHP
PHP调用C#开发的dll类库方法
Jul 28 #PHP
php中单个数据库字段多列显示(单字段分页、横向输出)
Jul 28 #PHP
windows的文件系统机制引发的PHP路径爆破问题分析
Jul 28 #PHP
浅析PHP程序设计中的MVC编程思想
Jul 28 #PHP
PHP错误Allowed memory size of 67108864 bytes exhausted的3种解决办法
Jul 28 #PHP
php实现的九九乘法口诀表简洁版
Jul 28 #PHP
You might like
Laravel中前端js上传图片到七牛云的示例代码
2017/09/04 PHP
PHP中md5()函数的用法讲解
2019/03/30 PHP
Javascript常考语句107条收集
2010/03/09 Javascript
Google排名中的10个最著名的 JavaScript库
2010/04/27 Javascript
基于JQuery的动态删除Table表格的行和列的代码
2011/05/12 Javascript
thinkphp中常用的系统常量和系统变量
2014/03/05 Javascript
jquery实现一个简单好用的弹出框
2014/09/26 Javascript
基于javascript实现图片切换效果
2016/04/17 Javascript
JS本地刷新返回上一页代码
2016/07/25 Javascript
Angular2学习笔记——详解路由器模型(Router)
2016/12/02 Javascript
整理关于Bootstrap列表组的慕课笔记
2017/03/29 Javascript
javascript 的变量、作用域和内存问题
2017/04/19 Javascript
xmlplus组件设计系列之路由(ViewStack)(7)
2017/05/02 Javascript
angularjs2中父子组件的数据传递的实例代码
2017/07/05 Javascript
微信小程序报错:this.setData is not a function的解决办法
2017/09/27 Javascript
利用weixin-java-miniapp生成小程序码并直接返回图片文件流的方法
2019/03/29 Javascript
微信小程序位置授权处理方法
2019/06/13 Javascript
Javascript如何递归遍历本地文件夹
2020/08/06 Javascript
[01:06]DOTA2小知识课堂 Ep.02 吹风竟可解梦境缠绕
2019/12/05 DOTA
轻松掌握python设计模式之策略模式
2016/11/18 Python
Python安装官方whl包和tar.gz包的方法(推荐)
2017/06/04 Python
python3获取两个日期之间所有日期,以及比较大小的实例
2018/04/08 Python
Python切片操作去除字符串首尾的空格
2019/04/22 Python
PyQt QListWidget修改列表项item的行高方法
2019/06/20 Python
Django中Middleware中的函数详解
2019/07/18 Python
django序列化serializers过程解析
2019/12/14 Python
使用tensorflow实现VGG网络,训练mnist数据集方式
2020/05/26 Python
python获取整个网页源码的方法
2020/08/03 Python
Perfume’s Club法国站:购买香水和化妆品
2019/05/02 全球购物
新闻专业大学生找工作的自我评价
2013/10/30 职场文书
在职人员函授期间自我评价分享
2013/11/08 职场文书
旷课检讨书500字
2014/10/14 职场文书
2014年语文教学工作总结
2014/12/17 职场文书
预备党员的思想汇报,你真的会写吗?
2019/06/28 职场文书
选择比努力更重要?这是长期以来对“努力”的最大误解
2019/07/12 职场文书
10大幻兽系恶魔果实 蝙蝠果实上榜,第一自愈能力强
2022/03/18 日漫