我有一个像这样的数组:
$array = Array ( 0 => 'oooo',
1 => 'no',
2 => 'mmmm',
3 => 'yes' );
我想要搜索一个单词 "yes"。我知道有 array_search()
函数,但我也想匹配 "yes"、"Yes" 和 "YES"。
我该如何做到呢?
array_search(strtolower($search), array_map('strtolower', $array));
array_map
会从0开始重新编号。因此返回的值将没有意义。 - Chadwick Meyerin_array()
代替array_search()
。$response = in_array('yes', array_map('strtolower', $array));
$is_there = in_array('yes', array_map('strtolower', $array), true);
。 - Niki Romagnoliarray_map('strtolower', $array)
,将整个数组规范化为小写的原因。 - brunohdaniel编辑:抱歉,我看到这是关于值的,参见:http://php.net/manual/en/function.array-change-key-case.php#88648
针对键:
$a = array('YES', 'yes', 'Yes');
$b = array_change_key_case($a, CASE_LOWER);
$f = array_search(strtolower($search), $b);