宜信同城网交流论坛

 找回密码
 立即注册
开启左侧

PHP中的,array_filter()函数

[复制链接]
发表于 2023-2-16 18:55:01 | 显示全部楼层 |阅读模式 来自 LAN

定义和用法

array_filter() 函数用回调函数过滤数组中的元素。

该函数把输入数组中的每个键值传给回调函数。如果回调函数返回 true,则把输入数组中的当前键值返回给结果数组。数组键名保持不变。


语法

array array_filter ( array $array [, callable $callback [, int $flag = 0 ]] )

参数描述
array必需。规定要过滤的数组。
callback可选。规定要用的回调函数。
flag

可选。决定 callback 接收的参数形式:

  • ARRAY_FILTER_USE_KEY - callback 接受键名作为的唯一参数
  • ARRAY_FILTER_USE_BOTH - callback 同时接受键名和键值

案例:

        function test_odd($var){

        return($var & 1);

        }

        $a1 = array("a","b",2,3,4);

        print_r(array_filter($a1,"test_odd"));

?>

b85bec92f5bc90503c8f66b3fafb488a.png

 

& 是二进制 按位与 的意思 1=0000 0001 ;
则将每一个值进行二进制转换, 末位 1和1匹配 则返回真, (1匹配的结果为 奇数).
如果使用 2 = 0000 0010;
则 倒数第二位 为1 会被匹配出来.
注: 可以先去 理解二进制的 & ^ | << >> 运算.

宜信网交流论坛 - 版权声明 1、在发表言论时,请遵守当地法律法规。主题所有言论纯属个人意见,与本站立场无关。
2、本站所有主题由作者发表,作者享有帖子相关版权,其他单位或个人使用、转载或引用本文时必须征得作者同意并注明来源于宜信网
3、如本帖侵犯到任何版权问题,请立即告知本站,本站将及时予与删除并致以最深的歉意。
4、帖子不遵守当地法律法规、广告、人身攻击等情况时,宜信网管理人员有权不事先通知发贴者而删除本文。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|小黑屋|宜信同城网交流论坛 ( 闽ICP备19021048号 )|站点地图

GMT+8, 2026-3-28 00:46 , Processed in 0.181130 second(s), 14 queries , Redis On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表