php中switch与if的性能对比

 大家都知道php中经常会用到判断语句,那么大家会想到if 和switch。但是有的页面要判断很多的变量情况,那么就涉及到了执行效率的问题。所以下文给大家对比一下两个函数的性能。

下面来一段测试代码,大家也可以到本地测试一下。

 

1 测试地址:http://www.2tblog.com/code/php_if_switch/php_if_switch.php

 

 1 <?PHP
2 $num = rand(1,100);
3 echo '$num = '.$num.'<br />';//显示随机数$num的值
4 $start = microtime(true);//获取执行if之前的时间
5 if($num == 1)
6 {}else if($num == 2)
7 {}else if($num == 3)
8 {}else if($num == 4)
9 {}else{}
10 $end = microtime(true);//获取执行if之后的时间
11 echo 'if : '.($end-$start).'<br />';//显示执行if所用时间
12
13 $start = microtime(true);//获取执行switch之前的时间
14 switch($num)
15 {
16 case 1:break;
17 case 2:break;
18 case 3:break;
19 case 4:break;
20 case 5:break;
21 }
22 $end = microtime(true);//获取执行switch之后的时间
23 echo 'switch: '.($end-$start).'<br />';//显示执行switch所用时间
24 ?>




下面我截图对比一下当$num 为1,50,100时,if和swich的执行速度。

以上数据是本人在本地的测试结果,不保证一定准确,但是大家运行几次,就能看出if与swich的执行效率了。

php中switch与if的性能对比 – 李伟的博客-SEO博客营销 企业网站推广策划 http://www.2tblog.com/664

posted @ 2011-09-04 19:34  simman  阅读(579)  评论(0编辑  收藏  举报