哪种形式更高效
这个:
switch($var) {
case 1:
break;
case 2:
break;
}
..或这个:
if( $var === 1 ) {
} elseif( $var === 2 ) {
}
在性能方面?
哪种形式更高效
这个:
switch($var) {
case 1:
break;
case 2:
break;
}
..或这个:
if( $var === 1 ) {
} elseif( $var === 2 ) {
}
在性能方面?
性能方面完全无关紧要。
正如PHPBench所示,即使有 1,000 次操作,两者之间的差异也只有 188 微秒,即百万分之 188 秒。PHP 代码通常有更大的瓶颈:单个数据库调用通常需要数十毫秒,即数万倍。
使用您喜欢的任何一个,并且哪个对您的代码的可读性更好 - 对于许多检查,很可能是switch
.
这种微尺度的性能根本无关紧要。使用更适合您的上下文的那个。可读性和可维护性远比性能重要。
它不是关于性能,它更多关于需求!
有时你希望在你的 if 条件下发生一些事情,否则,它会去 else。
如果您有很多要比较的值,可以使用 Switch