PHP不区分大小写的数组搜索函数


PHP case-insensitive array search functions

可能重复:
PHP不区分大小写的in_array函数

使用in_array函数时,是否可以进行不区分大小写的比较?

使用这样的源数组:

$a= array(
 'one',
 'two',
 'three',
 'four'
);

以下查找都将返回true:

in_array('one', $a);
in_array('ONE', $a);
in_array('fOUr', $a);

哪个函数或一组函数会起到同样的作用?我认为in_array本身无法做到这一点。因为它区分大小写。

如果要对数组的每个元素应用strtolower,请使用array_map:

in_array(strtolower('ONE'), array_map('strtolower', $a));