PHP 删除数组中的元素有多种方式,有删除数据中的一个元素和删除数组中的多个元素等。

删除数据中的一个元素

如果你想删除数组中的一个元素,你可以使用 unset() 或 array_splice() 方法。

如果你知道数组元素的值(value),但不知道键(key),你可以使用 array_search() 来获取键(key)。

unset() 方法

注意如果你使用 unset() 方法,它是不会改变其他的键(key),如果你想对其他的键(key)重新整理排序,可以使用 array_values()。

<?php
$array = array(0 => "a", 1 => "b", 2 => "c");
unset($array[1]);//↑ 你要删除的数组元素值的键
print_r($array);
?>

输出结果:

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

array_splice() 方法

如果你使用 array_splice() 方法,数组的键会自动重新建立索引, 但对关联性的数组不起作用,需要使用 array_values() 将键转换为数字键。

<?php
$array = array(0 => "a", 1 => "b", 2 => "c");
array_splice($array, 1, 1);//↑ Offset which you want to delete
print_r($array);
?>

输出结果:

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

array_splice() 在释放数组指定元素上与 unset() 函数取到相同作用。

删除数组中的多个元素

如果你想删除数组中的多个元素就不能使用吗 unset() 或 array_splice() 函数了,你需要使用 array_diff() 或 array_diff_key() 方法,使用该方法需要知道要删除的键(key)或值(value)。

array_diff() 方法

如果你知道要删除的数组元素, 你可以使用 array_diff()。

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

输出结果为:

Array
([1] => b
)

array_diff_key() 方法

如果你知道要删除的数组元素的键(key), 你可以使用 array_diff_key()。你需要在函数的第二个参数的键值位置输入要删除的键,值不需要,可随意。

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

输出结果为:

Array ([1] => b
)

PHP 删除数组中元素的方式相关推荐

  1. Javascript循环删除数组中元素的3种方法

    本文主要跟大家分享了关于Javascript循环删除数组中元素的几种方法,分享出来供大家参考学习,下面与微点阅读小编一起来看看详细的介绍: 问题 大家在码代码的过程中,经常会遇到在循环中移除指定元素的 ...

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

    php中删除数组元素是非常的简单的,但有时删除数组需要对索引进行一些排序要求我们会使用到相关的函数,这里我们来介绍使用unset,array_splice删除数组中的元素区别吧 如果要在某个数组中删除 ...

  3. js remove 当前元素_详解js删除数组中的指定元素

    本篇文章将会给大家介绍两种删除数组中的指定元素的方式,分别为: 1.单独定义一个的函数,通过函数来删除指定数组元素. 2.为Array对象定义了一个removeByValue的方法,在调用方法来删除指 ...

  4. php使用array_filter()和回调删除数组中的某个元素

    php采用回调函数删除数组中元素array_filter(): 定义和用法 array_filter() 函数用回调函数过滤数组中的元素,如果自定义过滤函数返回 true,则被操作的数组的当前值就会被 ...

  5. java数组删除元素_java中删除 数组中的指定元素方法

    java中删除 数组中的指定元素要如何来实现呢,如果各位对于这个算法不是很清楚可以和小编一起来看一篇关于java中删除 数组中的指定元素的例子. java的api中,并没有提供删除数组中元素的方法.虽 ...

  6. java删除数组中指定元素_java学习中如何删除数组中的指定元素

    java的api中,并没有提供删除数组中元素的方法.虽然数组是一个对象,不过并没有提供add()remove()或查找元素的方法.这就是为什么类似ArrayList和HashSet受欢迎的原因. 不过 ...

  7. Array.splice()--删除数组中重复的数据

    splice方法 从一个数组中移除一个或多个元素,如果必要,在所移除元素的位置上插入新元素,返回所移除的元素. 用法 my_array.splice(start, deleteCount [, val ...

  8. PHP删除数组中空值的方法介绍

    这篇文章主要介绍了PHP删除数组中空值的方法介绍,需要的朋友可以参考下 说来惭愧,以前在去掉数组的空值是都是强写foreach或者while的,利用这两个语法结构来删除数组中的空元素,简单代码如下: ...

  9. JS 删除数组中某个元素的几种方式

    目录 第一种:删除最后一个元素 pop 删除 slice 删除 splice 删除 for 删除 length 删除 第二种: 删除第一个元素 shift 删除 slice 删除 splice 删除 ...

最新文章

  1. 自动生成Makefile的全过程详解
  2. QT自定义图表上不同元素的外观
  3. 透过汇编另眼看世界之DLL导出函数调用
  4. vscode配置live-server转发代理
  5. OpenShift 4 - 用Compliance Operator对OpenShift进行安全合规扫描
  6. java 启动xms_关于java:启动JVM时-Xms和-Xmx参数是什么?
  7. zabbix数据库表结构
  8. 【OpenCV】-算子(Sobel、Canny、Laplacian)学习
  9. 如何在NVivo中获得最佳质量的音频和最佳的转录准确性
  10. java突然无法加载主类_JAVA之中出现无法加载主类的情况解决方法
  11. 台计算机结构看内存条位置,内存条正反怎么看
  12. 服务器部署方案文档,IBM目录服务器部署方案
  13. 在java中怎么表示三角函数_【Math】三角函数在Java中是怎么表示的?
  14. 第三版新视野大学英语读写教程4结业考点(1,2,3,5,6单元)
  15. java 京东秒杀系统_京东秒杀浪费坑位惩罚你可知道?
  16. Win11安装VMware虚拟机+win10教程(主要遇到蓝屏重启问题)
  17. java计算机毕业设计springboot+vue学生宿舍管理系统
  18. 下厨房的内容负责人潘小月演讲
  19. hdu3234 Exclusive-OR(带权并查集)
  20. 00后都这么卷吗?软件测试行业要变天了

热门文章

  1. 如何保护你写的 Python 代码?
  2. 清华学霸直博简历火了!CPU、操作系统、编译器全自主写,刘知远点赞
  3. 漫画:什么是八皇后问题?
  4. Zookeeper源码分析:Follower角色初始化
  5. Django模板之django自带模板
  6. 聊天机器人之语料准备
  7. Tomcat版本不同,功能区别也是很大!
  8. 怎么定义图像的质量?如何评价图像的质量?
  9. 基于OpenCV的透视图转化为不同平面
  10. 链表问题14——在单链表种删除指定值的节点