<?php
function multi_array_search($search_for, $search_in) {
foreach ($search_in as $element) {
if ( ($element === $search_for) || (is_array($element) && multi_array_search($search_for, $element)) ){
return true;
}
}
return false;
}
$arr = array("2014", array("January", "February", "March"), "2015", array("Monday", "Tuesday"));
echo multi_array_search("Tuesday", $arr) ? 'Found' : 'Not found';
?>
在上面的代码中
在multi_array_search("Tuesday",$arr);
我们传递的第一个参数是value
,第二个参数是array
,
但我的问题是我们传递的第一个参数是一组值。
即。我们正在使用$array=array("2015","Tuesday","March");
这样,当我们找到匹配值时,返回'Found',否则返回'Not found',该值也可能区分大小写,
答案 0 :(得分:0)
使用PHP的 strtolower()函数将参数转换为小写可以完成这项工作。我提出的代码如下,我希望它可以帮助你。
<?php
function multi_array_search($search_for, $search_in) {
$search_for=strtolower($search_for);
foreach ($search_in as $element) {
if(!is_array($element))
$element=strtolower($element);
if ( ($element === $search_for) || (is_array($element) && multi_array_search($search_for, $element)) ){
return true;
}
}
return false;
}
$arr = array("2014", array("January", "February", "March"), "2015", array("Monday", "Tuesday"));
echo multi_array_search("TUESDAY", $arr) ? 'Found' : 'Not found';
?>