回调函数return return($ var& 1)? [英] callback function return return($var & 1)?
本文介绍了回调函数return return($ var& 1)?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我已经阅读了有关 array_filter
<?php
function odd($var)
{
// returns whether the input integer is odd
return($var & 1);
}
function even($var)
{
// returns whether the input integer is even
return(!($var & 1));
}
$array1 = array("a"=>1, "b"=>2, "c"=>3, "d"=>4, "e"=>5);
$array2 = array(6, 7, 8, 9, 10, 11, 12);
echo "Odd :\n";
print_r(array_filter($array1, "odd"));
echo "Even:\n";
print_r(array_filter($array2, "even"));
?>
我什至在这里看到结果:
Even I see the result here :
Odd :
Array
(
[a] => 1
[c] => 3
[e] => 5
)
Even:
Array
(
[0] => 6
[2] => 8
[4] => 10
[6] => 12
)
但是我对这一行不了解:return($var & 1);
有人可以向我解释一下吗?
But I did not understand about this line: return($var & 1);
Could anyone explain me about this?
推荐答案
$var & 1
-按位与
它检查$var
是否为奇数
$var & 1
- is bitwise AND
it checks if $var
is ODD value
0 & 0 = 0,
0 & 1 = 0,
1 & 0 = 0,
1 & 1 = 1
因此,仅当$ var为ODD时,第一个回调函数才返回TRUE,第二个-反之亦然(!-是逻辑非).
so, first callback function returns TRUE only if $var is ODD, and second - vise versa (! - is logical NOT).
这篇关于回调函数return return($ var& 1)?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文