我试图通过搜索不同的值来找到数组中的值
这是我的数组
Array
(
[0] => Array
(
[triggerOn] => 07/19/2013 04:32 PM
[isAppointment] => 0
[engine_id] => 112
)
[1] => Array
(
[triggerOn] => 07/26/2013 04:32 PM
[isAppointment] => 1
[engine_id] => 111
)
)
我试图找到triggerOn的值当引擎id = 111?
因此,如果我的值为111,那么我需要返回07/26/2013 04:32 PM 如果我的值为112,那么我需要返回07/19/2013 04:32 PM
我该怎么做?
这是我到目前为止所尝试的
function returnValueOfArray($arr, $val){
foreach($arr AS $v){
foreach($v AS $sub){
if($val == $sub)
return $v['triggerOn'];
}
}
return 'Nothing Found';
}
但这不起作用。
答案 0 :(得分:3)
function findEngine_id($engine, $array){
foreach($array as $item){
if($item['engine_id'] == $engine) return $item['triggerOn'];
}
return false;
}
echo findEngine_id(111,$array);
答案 1 :(得分:1)
function search_in_array($array, $engine_id){
foreach($array as $key => $val){
if($engine_id == $val['engine_id']){
return $val['triggerOn'];
}
}
}
答案 2 :(得分:0)
另一种方法是:
// let's assume your array is called $myArray
for($i=0; $i < count($myArray) ; $i++ ){
if($myArray[$i]['engine_id'] == '111'){
return $myArray[$i]['triggerOn'];
break;
}
}
在一个函数中它给出了这个:
function find_engine($engine, $myArray){
for($i=0; $i < count($myArray) ; $i++ ){
if($myArray[$i]['engine_id'] == $engine){
return $myArray[$i]['triggerOn'];
break;
}
}
}