in_array
(PHP 4, PHP 5)
in_array — 檢查陣列中是否有某個值
說明
bool in_array ( mixed $needle , array $haystack [, bool $strict ] )
在 haystack 中搜尋
說明
<?php $os = array("Mac", "NT", "Irix", "Linux"); if (in_array("Irix", $os)) { echo "Got Irix"; } if (in_array("mac", $os)) { echo "Got mac"; } ?>
<?php $a = array('1.10', 12.4, 1.13); if (in_array('12.4', $a, true)) { echo "'12.4' found with strict check\n"; } if (in_array(1.13, $a, true)) { echo "1.13 found with strict check\n"; } ?>
<?php $a = array(array('p', 'h'), array('p', 'r'), 'o'); if (in_array(array('p', 'h'), $a)) { echo "'ph' was found\n"; } if (in_array(array('f', 'i'), $a)) { echo "'fi' was found\n"; } if (in_array('o', $a)) { echo "'o' was found\n"; } ?>
如果第三個參數 strict 的值為 TRUE 則 in_array() 函數也會檢查 needle 的型別是否和 haystack 中的相同。
Note: 如果 needle 是字串,則比較是區分大小寫的。
Example #1 in_array() 範例
rrreee
第二個條件失敗,因為in_array() 是區分大小寫的,所以以上程序顯示為:
Got Irix
_Example #2 inarray( rrreee
上例將輸出:
1.13 found with strict check
Example #3 in_array() 中用陣列作為needle
rrreee
假如:
$arr = array(*);
() 則有:
解決方法:
in_array(strval(0), $arr, true))