PHP删除数组中特定元素的两种方法

yipeiwu_com6年前PHP代码库

方法一:

<?php
$arr1 = array(1,3, 5,7,8);
$key = array_search(3, $arr1);
if ($key !== false)
  array_splice($arr1, $key, 1);
var_dump($arr1);
?>

输出:

array(4) { [0]=> int(1) [1]=> int(5) [2]=> int(7) [3]=> int(8) }

方法二:

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

输出:

array(4) { [0]=> int(1) [2]=> int(5) [3]=> int(7) [4]=> int(8) }

小结:

可以看到使用array_splice()删除特定值和使用unset删除特定值是有区别的。

array_splice()函数删除的话,数组的索引值也变化了。

unset()函数删除的话,数组的索引值没有变化。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对【宜配屋www.yipeiwu.com】的支持。如果你想了解更多相关内容请查看下面相关链接

相关文章

PHP curl批处理及多请求并发实现方法分析

PHP curl批处理及多请求并发实现方法分析

本文实例讲述了PHP curl批处理及多请求并发实现方法。分享给大家供大家参考,具体如下: 在面试过程中遇到一个问题,加入一个一个网站访问一次需要两秒,我们如何实现在2秒左右请求三次?...

学习php设计模式 php实现适配器模式

学习php设计模式 php实现适配器模式

一、意图 将一个类的接口转换成客户希望的另外一个接口。Adapter模式使得原来由于接口不兼容而不能一起工作的那此类可以一起工作 二、适配器模式结构图 三、适配器模式中主要角色 目标...

PHP实现过滤掉非汉字字符只保留中文字符

<?php $str = "a 1b 2b<中文>。xxyy字符"; //转换 GB2312 -> UTF-8 $str = mb_convert_encod...

判断PHP数组是否为空的代码

PHP判断数组为空首选方法:count($arr),size($arr); 复制代码 代码如下: $arr= array(""); echo count($arr); echo...

详解PHP的Yii框架中组件行为的属性注入和方法注入

行为的属性和方法注入原理 上面我们了解到了行为的用意在于将自身的属性和方法注入给所依附的类。 那么Yii中是如何将一个行为 yii\base\Behavior 的属性和方法, 注入到一个...