$cc?0:1 和 !$cc?1:0 问号表达式 哪种效率高?

sirius419 2009-08-20 01:16:29
或许是一个无关轻重的问题,效率提高的很微小。个人一直也觉得无关紧要,所以经常忽略,但是又一次问及,这两种方式到底哪种效率会占优呢?


1、return empty($cc) ? false : true;
vs
2、return !empty($cc) ? true : false;

先说说自己观点,不知道理解的是否争取了。

从代码上而言,觉得第一种效率要高,因为少了一次非运算。
如果就$cc是否为空出现机率来看的话,如果$cc为true的机率要是大于false的机率,换句话说true 60% 的情况,第2种方式应该比第一种高。

...全文
81 点赞 收藏 3
写回复
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
江南昆虫 2009-08-20
应该是第一种效率高,因为不管结果如何,一定做了“empty($cc)”运算,第二种又不管empty($cc)得到什么又做了“!”运算。
回复
itian 2009-08-20
如果就$cc是否为空出现机率来看的话,如果$cc为true的机率要是大于false的机率,换句话说true 60% 的情况,

-------------------无论出现几率是100%还是0%,都要执行一遍啊
回复
netstu 2009-08-20
服了
回复
发动态
发帖子
基础编程
创建于2007-09-28

2.1w+

社区成员

从PHP安装配置,PHP入门,PHP基础到PHP应用
申请成为版主
社区公告
暂无公告