php除了if和switch判断还有其他吗?哪个效率高?

 我来答
在晴天的雨伞
推荐于2017-11-22 · TA获得超过6869个赞
知道大有可为答主
回答量:5761
采纳率:86%
帮助的人:1181万
展开全部
不管写什么语言的程序,一定会考虑到代码的运行效率问题。在查阅了一些资料后,switch与ifelse在不同的‘环境'下效率各有优胜。
当被判断的值是常量(固定不变的值)时,switch的运行效率比ifelse的运行效率高;

$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有好处;
?

$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的值为不知道';
}
skyshandianxia
2016-05-11 · 知道合伙人软件行家
skyshandianxia
知道合伙人软件行家
采纳数:321 获赞数:657

向TA提问 私信TA
展开全部
还有一个三元运算符,“条件?为真时:为假时”。理论上来说,三元运算符是效率最高的,if和switch来比较的话,当条件少于3条时,将执行概率最大的分支语句写到if语句的第一个分支,效率要大大高于switch语句。但是当条件很多是,switch的优势也是很明显的。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式