PHP:切换vs if

use*_*839 4 php if-statement switch-statement

哪种形式更有效

这个:

switch($var) {
  case 1:

    break;
  case 2:

    break;
}
Run Code Online (Sandbox Code Playgroud)

..或者这个:

if( $var === 1 ) {

} elseif( $var === 2 ) {

}
Run Code Online (Sandbox Code Playgroud)

在表现方面?

Pek*_*ica 23

性能方面完全无关紧要.

正如PHPBench所展示的那样,即使有1000次操作,两者之间的差异大约为188微秒,即188 万分之一秒.PHP代码通常有更大的瓶颈:单个数据库调用通常需要几十毫秒,这是数万倍.

使用您喜欢的任何一种,以及对代码的可读性更好的方法 - 对于许多检查,最有可能的是switch.