array_filter裡這個$var & 1 這語法什麼意思啊

WBOY
發布: 2016-10-22 00:14:30
原創
2168 人瀏覽過

&& 是並且 ,一個是什麼意思 好像不是引用傳遞啊,然後 結果是3 沒太懂,誰能給小弟講2句,謝謝

<code><?php
function test_odd($var)
{
return($var & 1);
}

$a1=array("a","b",2,3,4);
print_r(array_filter($a1,"test_odd"));
?>

打印结果Array ( [3] => 3 )</code>
登入後複製
登入後複製

回覆內容:

&& 是並且 ,一個是什麼意思 好像不是引用傳遞啊,然後 結果是3 沒太懂,誰能給小弟講2句,謝謝

<code><?php
function test_odd($var)
{
return($var & 1);
}

$a1=array("a","b",2,3,4);
print_r(array_filter($a1,"test_odd"));
?>

打印结果Array ( [3] => 3 )</code>
登入後複製
登入後複製

php的 位元運算子 -位元與,test_odd是一個判斷奇數的函數。

array_filter裡這個$var & 1 這語法什麼意思啊

不過這段中有段很重要的話是英文的, 我翻譯一下:

如果&, |, ^的兩個操作數都是字串, 那會先把字串轉換成對應的ascii碼然後再進行位操作, 如果是其它情況, 那就把它們都轉換成整數再進行位元操作.

所以雖然a的ascii碼是97, 但是還是會被過濾掉.

相關標籤:
php
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板
關於我們 免責聲明 Sitemap
PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!