李涛自留地
回到顶部

PHP 数组查找函数 in_array()、array_search()、array_keys() 实战对比

最近写权限验证的时候,纠结用 in_array 还是 array_key_exists,查了半天文档才发现这俩根本不是一个东西。今天把这几个数组查找函数捋清楚。 in_array() 判断值是否存在 in_array 最常用的,判断一个值在不在数组里。 $users = ['admin&#…

PHP array_reverse() 函数详解:数组反转的 N 种方式

前言 最近处理日志数据,发现数据是按时间正序存储的,但前端需要倒序展示。本来想写个循环倒排,后来发现 array_reverse() 一行搞定。 基本用法 array_reverse(array, preserve_keys) - 反转数组元素顺序。第二个参数默认 false(重置键名),设为 tr…

PHP array_walk() 函数详解:给数组每个元素套上自定义逻辑

最近在给一个表单数据处理函数加日志,需要遍历每个字段判断是否合法。本来写了个 foreach,后来发现 array_walk() 一行就能搞定,而且还能改原数组的值。 这篇文章聊聊 array_walk()的用法、传引用参数、和array_map()的区别。 基本用法 array_walk(arra…

PHP array_reduce() 函数详解:数组归约与聚合

最近在处理一段数据处理代码时,发现用 for 循环累加、计数、拼接字符串的代码太丑了。后来了解了array_reduce() 函数,发现它能把这些操作浓缩到几行代码里。 这篇文章把array_reduce()的各种用法、实战场景和注意事项整理出来。 array_reduce()基本用法 array_…

PHP in_array()、array_search()、array_key_exists() 查找函数对比

最近写权限检查函数时,需要频繁判断一个 ID 是否在允许列表中。用 in_array($id, $arr) 查了老半天,后来发现把数组反转后,array_key_exists() 的性能高出几个数量级。 这篇文章聊聊array_flip()和 array_key_exists() 的配合使用,以及常…

PHP array_map() 函数详解:对数组元素统一处理

处理数组时,经常需要对每个元素做统一转换:比如把所有字符串转小写、把所有数字乘以2、或者对每个对象调用某个方法。以前用 foreach 循环处理,后来发现array_map()更简洁高效。 这篇文章把array_map()的用法、多数组处理、结合匿名函数等技巧整理出来。 array_map()基本用…

PHP array_keys() 函数详解:获取数组键名的 N 种姿势

写 PHP 数组处理代码时,经常需要拿到数组的所有键名(key)。比如遍历一个关联数组,或者用 array_combine 重新组合数组。以前我总是一手 for 循环手写 key 提取,后来发现 PHP 原生就有array_keys() 函数,一行搞定。 这篇文章把array_keys()的用法、技…

PHP怎么循环遍历输出数组 PHP遍历输出数字索引数组及多维数组

之前学习的数组有关知识中,基本上都是使用var_dump()或者是pinrt_r()及echo输出数组键的方式,打印输出数组,而打印输出数组这种方式,大多数是用在测试或者是线下练习数组使用时使用,那么PHP中如何循环遍历输出数组呢?本文将从PHP如何遍历输出数字索引数组及多维数组、二维关联数组等三大…

Python如何遍历输出列表所有的元素?

Python如何遍历输出列表所有的元素?如果直接打印的话,就是直接输出的列表,遍历输出的话就需要用到循环来输出列表。Python如何遍历输出列表所有的元素的思路解析:首先我们需要写一个列表,然后再在列表中放入一些列表元素,最后再在循环语句中进行For循环遍历输出即可遍历输出列表的所有元素。 [cap…