我有一个功能:
public function CustomerRating() {
$result = $db->query("...");
$row = $result->fetch_assoc();
if($row)
$output = $row['somefield'];
} else {
$output = "error";
}
return $output;
}
//somewhere on another page...
if(is_numeric($class->CustomerRating()) {
echo $class->CustomerRating;
} else {
echo "There is an error with this rating.";
}
Run Code Online (Sandbox Code Playgroud)
有没有更好的方法来查找错误?在这个函数中,如果没有返回任何行,它本身并不意味着"错误",它只是意味着无法计算该值.当我检查函数的结果时,我觉得有一种更好的方法来检查在if函数中显示它之前返回的数据.最好的方法是什么?我想返回一个"假",但是在调用函数时我该如何检查?谢谢!
你需要例外:
public function CustomerRating() {
$result = $db->query("...");
$row = $result->fetch_assoc();
if ($row !== null) {
return $row['somefield'];
} else {
throw new Exception('There is an error with this rating.');
}
}
// Somewhere on another page...
try {
echo $class->CustomerRating();
} catch (Exception $e) {
echo $e->getMessage();
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
19673 次 |
| 最近记录: |