假设我有一个函数,它在二维数组中寻找一个值:
function findValueBi($array, $field, $value, $returnfield)
{
foreach($array as $key => $product)
{
if ( $product[$field] === $value )
return $product[$returnfield];
}
return false;
}二维数组如下所示:
Array
(
[0] => Array
(
[number] => 2
[type] => unimodal
)
[1] => Array
(
[number] => 6
[type] => unimodal
)
[2] => Array
(
[number] => 8
[type] => multimodal
)
[3] => Array
(
[number] => 27
[type] => multimodal
)
[4] => Array
(
[number] => 29
[type] => multimodal
)
)函数的作用是在“number”键中查找给定的值。如果找到它,我将检索其相应的“type”键值。例如,如果我正在寻找'number‘29,那么我将得到'type’值"multimodal“(数组示例的最后一个项)。否则,如果找不到值,则函数返回false。
因此,我检索这个值的方式如下:
if(findValueBi($numbers_patterns,'number',$number,'type')!==false){
$resultado=findValueBi($numbers_patterns,'number',$number,'type');
return $resultado;
}
else{ ... }是否有更好和/或更快的方法来做到这一点?是否有可能在if语句中检索信息?如您所见,我将调用该函数两次,那么如何使用if语句调用它一次?
发布于 2014-10-01 03:28:18
您可以选择第一次使用它,然后在if中使用它:
$resultado = findValueBi($numbers_patterns,'number',$number,'type'); // call it once
if($resultado !== false){
// use $resultado here
}https://stackoverflow.com/questions/26133632
复制相似问题