}$a1=array("a","b",2,3,4);print_r(array_filter($a1,"test_odd"));?>
3 回答
胡子哥哥
TA贡献1825条经验 获得超6个赞
& 是二进制 按位与 的意思 1=0000 0001 ;
则将每一个值进行二进制转换, 末位 1和1匹配 则返回真, (1匹配的结果为 奇数).
如果使用 2 = 0000 0010;
则 倒数第二位 为1 会被匹配出来.
注: 可以先去 理解二进制的 & ^ | << >> 运算.
catspeake
TA贡献1111条经验 获得超0个赞
test_odd 是测试奇偶数的函数,上面的代码是找出 $a1 数组中的奇数的元素。& 是按位与运算,将 “a", "b", 2,3,4 转成二进制,最低位分别和 1 做与运算,11 为 1, 10 为 0,为 1 时是奇数,保留,用 print_r 打印出结果。test_odd 通常用做表格的隔行着色用,奇数行着色,偶数行忽略,这样看着清晰。
不仅用做表格的隔行着色,还可以在两种状态间定时切换用。
- 3 回答
- 0 关注
- 354 浏览
添加回答
举报
0/150
提交
取消
