in_array 這個函數用來檢查數組中是否存在某個值
實際使用中可能會出現這樣一個問題
$test = 'a';
$arr = [0,1,2,3,4,5,6,7,8,9];
if(in_array($test, $arr)){
echo "in";
}else{
echo "no";
}
這時候我們得到的結果是in
得到這個結果的原因是php在比較數字和字符串的時候,會把字符串轉換成數字來進行比較,字符串a被轉換成了0
不想要這樣的結果,那就采用嚴格比較模式添加第三個參數為true
$test = 'a';
$arr = [0,1,2,3,4,5,6,7,8,9];
if(in_array($test, $arr, true)){
echo "in";
}else{
echo "no";
}
返回no
php的靈活性有時候還是會帶來一些小問題的,所以平時還要注意。