PHP - array_search()失败=== true,但没有开启!== false?

Mis*_*Bla 0 php arrays

当我想检查数组中是否存在某些内容并获取密钥时,我使用了array_search()函数.

为什么当我比较函数完全等于true(=== true)时它返回false,当我将它与不完全等于false(!== false)时它返回true?

<?php
    if(array_search($value, $array) === true)
    {
        // Fails
    }

    if(array_search($value, $array) !== false)
    {
        // Succeeds
    }
?>
Run Code Online (Sandbox Code Playgroud)

提前致谢.

Muh*_*han 8

找到匹配项时,array_search会返回指针.只有在找不到匹配时才返回false.这就是为什么在您的情况下只有相反的情况.

如果在数组中找到针,则返回针的键,否则返回FALSE.