php in_array 這是怎麼回事?
PHPz
PHPz 2017-06-06 09:53:41
0
3
1085
<?php
function test($a="all"){
    var_dump(in_array($a,array(0,1)));
}

test("all");

test(1);

回傳兩個true

PHPz
PHPz

学习是最好的投资!

全部回覆(3)
小葫芦

bool in_array ( mixed $needle , array $haystack [, bool $strict = FALSE ] )

- 如果第三个参数 strict 的值为 TRUE 则 in_array() 函数还会检查 needle 的类型是否和 haystack 中的相同。

你需要使用第三個參數。

Ty80

PHP是弱型別語言,會根據具體場景自動轉換變數類型。你要搜尋的陣列明顯都是整數,那就只能把變數轉為整數,純字元轉為整數是0,自然就在裡面了。

我想大声告诉你

這是因為字串存在轉為未數字的問題var_dump('d'==0); true 純字元會轉換為 0

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板