我有以下代码:
$ErrorType = null;
switch ($ErrNo) {
case 256, 1:
$ErrorType = "Error";
break;
case 512, 2:
$ErrorType = "Warning";
break;
case 1024, 8:
$ErrorType = "Notice";
break;
case 2048:
$ErrorType = "Strict Warning";
break;
case 8192:
$ErrorType = "Depreciated";
break;
}
但问题是,我将从错误处理软件解决方案的预定义常量开始。我不能为专用错误类别指定多个“案例”,例如:
switch ($ErrNo){
case 1:
$ErrorType = "Error";
break;
case 256:
$ErrorType = "Error";
}
这是代码的重复..虽然像我的第一个例子这样的解决方案,但是因为两个整数属于同一类别会有所帮助。相反,我将返回以下内容:
解析错误:语法错误,意外','在行中的Action_Error.php 37
答案 0 :(得分:5)
指定多个这样的案例
switch ($ErrNo){
case 256:
case 1:
$ErrorType = "Error";
break;
// ...
答案 1 :(得分:1)
指定重复案例,而不在它们之间使用break
。例如:
switch ($ErrNo) {
case 256:
case 1:
$ErrorType = "Error";
break;
case 512:
case 2:
$ErrorType = "Warning";
break;
/* ... */
}
答案 2 :(得分:1)
这样做的正确方法是:
switch ($ErrNo){
case 1:
case 256:
$ErrorType = "Error";
break;
case 512:
case 2:
$ErrorType = "Error";
break;
}