刚好有个朋友在群上提到了这个问题,于是查询手册后总结一下。

错误例子:

上述例子中,会出现比对错误。

1、case 比对用的是松散比较。
2、case 求值后,都为true 或者false

当 $num = 0 时, 0 和 false 松散比较为 true ,于是,会和第二个 case 匹配成功。

【总结】
1、case 最好是恒定的情况
2、考虑松散比较的问题,最好不要使用1 和 ‘1’ 这种简单的比对