PHP从数组中删除元素的四种方法实例


Posted in PHP onMay 12, 2017

茴香豆的“茴”字有四种写法,PHP从数组中删除元素也有四种方法 ^_^。

删除一个元素,且保持原有索引不变

使用 unset 函数,示例如下:

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

输出:

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

使用 unset 并未改变数组的原有索引。如果打算重排索引(让索引从0开始,并且连续),可以使用 array_values 函数:

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

删除一个元素,不保持索引

使用 array_splice 函数,示例如下:

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

输出:

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

按值删除多个元素,保持索引

使用 array_diff 函数,示例如下:

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

输出:

Array (
    [1] => b
)

与 unset 类似,array_diff 也将保持索引。

按键删除多个元素,保持索引

使用 array_diff_key 函数,示例如下:

<?php

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

输出:

Array (
    [1] => b
)

与 unset 类似,array_diff_key 也将保持索引。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

PHP 相关文章推荐
php获取网页内容方法总结
Dec 04 PHP
PHP 远程文件管理,可以给表格排序,遍历目录,时间排序
Aug 07 PHP
php select,radio和checkbox默认选择的实现方法
May 15 PHP
解析PHP中数组元素升序、降序以及重新排序的函数
Jun 20 PHP
解析PHP中的内存管理,PHP动态分配和释放内存
Jun 28 PHP
PHP实现读取一个1G的文件大小
Aug 24 PHP
PHP程序员基本要求和必备技能
May 09 PHP
php+ajax实现图片文件上传功能实例
Jun 17 PHP
yii权限控制的方法(三种方法)
Dec 28 PHP
PHP封装函数实现生成随机的字符串验证码
Jan 24 PHP
PHP完全二叉树定义与实现方法示例
Oct 09 PHP
Laravel 连接(Join)示例
Oct 16 PHP
利用PHPExcel读取Excel的数据和导出数据到Excel
May 12 #PHP
php中时间函数date及常用的时间计算
May 12 #PHP
解决php 处理 form 表单提交多个 name 属性值相同的 input 标签问题
May 11 #PHP
PHP 实现浏览记录并按日期分组
May 11 #PHP
thinkPHP5 ACL用户权限模块用法详解
May 10 #PHP
使用WAMP搭建PHP本地开发环境
May 10 #PHP
thinkPHP5 tablib标签库自定义方法详解
May 10 #PHP
You might like
使用php实现下载生成某链接快捷方式的解决方法
2013/05/07 PHP
curl 出现错误的调试方法(必看)
2017/02/13 PHP
全面解析PHP面向对象的三大特征
2017/06/10 PHP
php实现网页端验证码功能
2017/07/11 PHP
php实现微信企业号支付个人的方法详解
2017/07/26 PHP
利用jQuery 实现GridView异步排序、分页的代码
2010/02/06 Javascript
javascript动态改变img的src属性图片不显示的解决方法
2010/10/20 Javascript
jQuery1.5.1 animate方法源码阅读
2011/04/05 Javascript
ASP.NET jQuery 实例12 通过使用jQuery validation插件简单实现用户注册页面验证功能
2012/02/03 Javascript
使用JQUERY进行后台页面布局控制DIV实现左右式
2014/01/07 Javascript
js获取当前页面的url网址信息
2014/06/12 Javascript
JavaScript中的console.assert()函数介绍
2014/12/29 Javascript
jquery validate表单验证的基本用法入门
2016/01/18 Javascript
js实现楼层导航功能
2017/02/23 Javascript
JavaScript和JQuery获取DIV值的方法示例
2017/03/07 Javascript
浅谈vue首屏加载优化
2018/06/28 Javascript
Angular5中状态管理的实现
2018/09/03 Javascript
简单了解three.js 着色器材质
2020/08/03 Javascript
[04:47]DOTA2-潍坊风行电子俱乐部探秘
2014/08/08 DOTA
用Python的Tornado框架结合memcached页面改善博客性能
2015/04/24 Python
Python编程判断这天是这一年第几天的方法示例
2017/04/18 Python
Python生成随机密码的方法
2017/06/16 Python
python 常用的基础函数
2018/07/10 Python
amazeui时间组件的实现示例
2020/08/18 HTML / CSS
英国时尚配饰、珠宝和服装网站:KJ Beckett
2020/01/23 全球购物
.net C#面试题
2012/08/28 面试题
简单英文演讲稿
2014/01/01 职场文书
打造完美自荐信
2014/01/24 职场文书
乡镇三项教育实施方案
2014/03/30 职场文书
低碳环保标语
2014/06/12 职场文书
2014年节能减排工作总结
2014/12/06 职场文书
硕士学位论文评语
2014/12/31 职场文书
毕业生对母校寄语
2015/02/26 职场文书
辩护意见书
2015/06/04 职场文书
课改心得体会范文
2016/01/25 职场文书
Python词云的正确实现方法实例
2021/05/08 Python