其实这是并不能算是一个search的方法,但我写这个方法是为了快速定位到数组里的key,以返回相应的值。
例如:
$arr = array(
'a' => array(
'b' => array(
'c' => array(
'd'
)
)
),
'e' => array(
'f' => array(
'g' => array(
'h'
),
'i' => array(
'j'
)
)
)
);
象这样的数组,如果要取$arr['a']['b']['c']这样的值,写起来有点复杂,于是我这样写了一个函数
function search( $keys , $arr ){
if(!is_array($arr) && !is_object($arr)){
return ;
}
$keys = explode("." , $keys );
$_err = false;
foreach($keys as $key){
if(isset($arr[$key])){
$arr = $arr[$key];
}else{
$_err = true;
break;
}
}
if($_err == true)return ;
return $arr;
}
这样就很好办了。。直接$e = search(“a.b.c” , $arr);
就可以返回值了