首页 » PHP教程 » php数组值去空技巧_3分钟短文 PHP 根据值移除数组元素哪个方法最简单

php数组值去空技巧_3分钟短文 PHP 根据值移除数组元素哪个方法最简单

duote123 2024-11-06 0

扫一扫用手机浏览

文章目录 [+]

学习韶光

假设有一个一维数组,纯挚的数字数组。
为了简化问题,我们假设数组元素没有重复项。

php数组值去空技巧_3分钟短文  PHP 根据值移除数组元素哪个方法最简单

$messages = [312, 401, 1599, 3, ...];

那么该如何移除 “401”这个元素呢?

php数组值去空技巧_3分钟短文  PHP 根据值移除数组元素哪个方法最简单
(图片来自网络侵删)

最大略的办法,该当利用 array_search 和 unset 两个函数完成,代码这样写:

if (($key = array_search($del_val, $messages)) !== false) { unset($messages[$key]);}

函数 array_search 是在数组中搜索给定的值,如果成功则返回相应的键名。
如果没有找到匹配的值,则返回false。

我们利用变量 $key 获取 array_search 的返回值,如果不是 false,那么便是存在。
然后调用 unset 函数进行删除即可。

须要把稳的是,比较运算符一定是利用“!==”这个不全即是号,否则如果返回了数组索引 0,也会被判断为空,即 0 == false。

其他方法

换一种方法处理。
我们考试测验利用 array_diff 函数,打算差集,可以删除任意多个元素的值:

array_diff( [312, 401, 15, 401, 3], [401] )

但是这个函数会有副浸染,便是返回值是新的数组,保持索引键值不变。
同时,原数组内容保持不变。

深入利用

上面我们给定的条件非常大略,便是加入数组内都是不同的数据。
实际运用中,很难担保这一点。
除非是模型返回的主键,或者做了 unique 约束的字段,否则不能担保数据集内没有相同的值。

手册上也说了,这样根据值移除数据内所有对应元素的,该当利用 array_keys 函数。

foreach (array_keys($messages, 401, true) as $key) { unset($messages[$key]);}

函数 array_keys 第三个参数为可选项,用于标记是否严格筛选模式。

写在末了

本文通过不同的方法,演示了如何从数组中,根据值移除相应元素的方法。

Happy coding :_)

我是 @程序员小助手 ,持续分享编程知识,欢迎关注。

标签:

相关文章

Java代码虚拟化保护技术与应用前景

软件应用的需求日益增长,软件开发过程中对代码的保护成为了一个重要议题。Java作为一种广泛应用于企业级应用的编程语言,其代码虚拟化...

PHP教程 2025-03-02 阅读1 评论0

CAD插件错误代码与应对步骤

CAD(计算机辅助设计)软件在工程设计领域得到了广泛应用。CAD插件作为提升设计效率的重要工具,在提高设计师工作效率的也带来了一定...

PHP教程 2025-03-02 阅读1 评论0

上古卷轴代码规则大全游戏背后的编程奥秘

《上古卷轴》作为一款深受玩家喜爱的角色扮演游戏,自问世以来便以其丰富的世界观、独特的游戏体验和深厚的文化底蕴吸引了无数玩家。在这款...

PHP教程 2025-03-02 阅读1 评论0