本文实例分析了php中switch与ifelse的效率区别及适用情况。分享给大家供大家参考。具体分析如下:
PHP中的这两个方法都是用于判断值是否满足条件,如果满足/不满足做出不同行为动作。
不管写什么语言的程序,一定会考虑到代码的运行效率问题。在查阅了一些资料后,switch与ifelse在不同的‘环境'下效率各有优胜。
1、当被判断的值是常量(固定不变的值)时,switch的运行效率比ifelse的运行效率高;
1
2
3
4
5
6
7
8
9
10
11
12
|
$changliang =3; // 变判断的值为常量 switch ( $changliang ){ case 1: echo '常量值为1' ; break ; // 跳出循环 case 2: echo '常量值为2' ; break ; case 3: echo '常量值为3' ; break ; } |
2、当被判断值为变量,ifelse的运行效率高于switch,ifelse贯彻一判到底的方针,会从第一个条件开始判断,直到最后一个else,所以学会使用switch有好处;
1
2
3
4
5
6
7
8
9
10
|
$a = $_GET [ 'a' ]; // 通过get传值后接值; 被判断的值 if ( $a =1){ echo '变量a的值为1' ; } elseif ( $a =2){ echo '变量a的值为2' ; } elseif ( $a =3){ echo '变量a的值为3' ; } else { echo '变量a的值为不知道' ; } |
希望本文所述对大家的php程序设计有所帮助。