function returnStatus($status)
{
$supportStatus = [
0 => 'open',
1 =>'half closed',
9 => 'closed',
];
$key = array_search($status, $supportStatus);
return $supportStatus[$key];
}
我的脚本返回0(打开),即使我将9作为int发送给函数。
答案 0 :(得分:1)
您要找的是array_key_exists()
function returnStatus($status){
$supportStatus = [
0 => 'open',
1 =>'half closed',
9 => 'closed',
];
$key = array_key_exists($status, $supportStatus);
return $supportStatus[$key];
}
此外,如果您最终对存储在该密钥位置的值感兴趣,那么不要甚至需要进行这种麻烦。
我只是按照以下一行进行..
echo isset($supportStatus[$status]) ? $supportStatus[$status]: false;
或使用赋值运算符
$output = isset($supportStatus[$status]) ? $supportStatus[$status]: '';
答案 1 :(得分:0)
我希望这是你正在寻找的,
function searchColor($color){
$array = array(0 => 'blue', 1 => 'red', 2 => 'green', 3 => 'red');
$key = array_search($color, $array);
return $array[$key];
}
echo searchColor('blue');
更新您的代码,看看它是否有效,here is the reference。