我在一个网站上找到了这段代码,可以将摄氏度转换为华氏度和开尔文。但是我看不懂里面的一行。
function conv_temp($val , $type_val , $type_wanted) {
$tab_val = array("C", "F", "K");
if (!(in_array($type_val, $tab_val) && in_array($type_wanted,$tab_val)))
return 0;
switch ($type_val) {
case "C" : // degrees Celsius
switch ($type_wanted) {
case "C" :
return $val;
case "F" :
return ($val * 9 / 5 + 32);
case "K" :
return ($val + 273.16);
case "F" : // degrees Fahrenheit
switch ($type_wanted) {
case "C" :
return (($val - 32) * 5 / 9);
case "F" :
return $val;
case "K" :
return ((($val - 32) * 5 / 9) + 273.16);
case "K" : // degrees Kelvin
switch ($type_wanted) {
case "C" :
return ($val - 273.16);
case "F" :
return (($val - 273.16) * 9 / 5 + 32);
case "K" :
return $val;
}
}
}
}
}
echo conv_temp(5,'C','F')."\n";
?>;
为什么in_array必须return 0?我删除了这一行,该功能仍然有效。
天涯尽头无女友
HUWWW