1. 【强制】在一个 switch 块内,每个 case 要么通过 break/return 等来终止,要么注释说明程
序将继续执行到哪一个 case 为止;在一个 switch 块内,都必须包含一个 default 语句并且
放在最后,即使它什么代码也没有;
2. 【**强制**】在 if/else/for/while/do 语句中必须使用大括号。即使只有一行代码,避免采用
单行的编码方式
正例:
~~~
if (true !== $result) {
$this->error($result);
}
~~~
反例:
~~~
if (true !== $result) $this->error($result);
~~~
3. 【推荐】表达异常的分支时,少用 if-else 方式,这种方式可以改写成:
~~~
if ($condition) {
...
$this->success('正确');
}
// 接着写 else 的业务逻辑代码;
~~~
【强制】避免后续代码维护困难,if语句请勿超过 3 层,超过3层请使用switch语句
~~~
$favfruit="orange";
switch ($favfruit) {
case "apple":
echo "Your favorite fruit is apple!";
break;
case "banana":
echo "Your favorite fruit is banana!";
break;
case "orange":
echo "Your favorite fruit is orange!";
break;
default:
echo "Your favorite fruit is neither apple, banana, or orange!";
}
~~~
4. 【推荐】尽量不要在条件判断中执行其它复杂的语句,将复杂逻辑判断的结果赋值给一个有意义的布尔变量名,以提高可读性
正例
~~~
$existed = ($file != null) && (...) || (...);
if ($existed) {
...
}
~~~
反例
~~~
if (($file != null) && (...) || (...)) {
...
}
~~~