试问, 这两段程序哪个效率高呢??
时间:2011-09-05
来源:互联网
而是想问下面两段程序,执行效率是不是一样呢?
第一段中IF 如果 && 前的条件不成立了,php还会去判断&&后面的条件吗??
- foreach($array as $value) {
- if((substr_count($value, '-') == 5) && preg_match("#^[0|1|3|-]{14}$#", $value)) {
- array_push($arrValue, $value);
- }
- }
- foreach($array as $value) {
- if(substr_count($value, '-') == 5) {
- if(preg_match("#^[0|1|3|-]{14}$#", $value)) {
- array_push($arrValue, $value);
- }
- }
- }
作者: 北极猫 发布时间: 2011-09-05
作者: kawais 发布时间: 2011-09-05
作者: 13966837 发布时间: 2011-09-05
作者: TNT9527 发布时间: 2011-09-05
不会
作者: 13966837 发布时间: 2011-09-05
13966837 发表于 2011-9-5 15:28
哦! 兄台.. 请您指教一下.. 我要更高的效率. 该怎么办呢?
作者: 北极猫 发布时间: 2011-09-05
作者: 北极猫 发布时间: 2011-09-05
kawais 发表于 2011-9-5 15:25
分就给你了. 这是一种探索的精神.楼上也许回答对了.但是没有讲为什么?? 是主观猜测还是已经知道运行原理? 没说.
作者: 北极猫 发布时间: 2011-09-05
作者: fireye 发布时间: 2011-09-05
作者: imint0 发布时间: 2011-09-05
作者: llh110220 发布时间: 2011-09-05
北极猫 发表于 2011-9-5 15:40
在and运算中,第一个不成立,则退出判断。
在or运算中,第一个成立,则退出判断。
可以用代码验证测试,也可以从逻辑推理去推导,能够开发语言的人都是牛人,不会犯那么低级的错误的。
作者: 单骑闯天下 发布时间: 2011-09-05
imint0 发表于 2011-9-5 16:29
哇! 原来这叫逻辑短路呀 学习了... HOH
作者: 北极猫 发布时间: 2011-09-05
作者: goyem 发布时间: 2011-09-05
goyem 发表于 2011-9-5 16:38
为什么呢?? 不是一样的吗?
作者: 北极猫 发布时间: 2011-09-05
作者: TNT9527 发布时间: 2011-09-05
作者: 剑枫 发布时间: 2011-09-05
而是想问下面两段程序,执行效率是不是一样呢?
第一段中IF 如果 && 前的条件不成立了,php还会去判断&&后面的条件吗??
- foreach($array as $value) {
- if((substr_count($value, '-') == 5) && preg_match("#^[0|1|3|-]{14}$#", $value)) {
- array_push($arrValue, $value);
- }
- }
- foreach($array as $value) {
- if(substr_count($value, '-') == 5) {
- if(preg_match("#^[0|1|3|-]{14}$#", $value)) {
- array_push($arrValue, $value);
- }
- }
- }
作者: 北极猫 发布时间: 2011-09-05
作者: kawais 发布时间: 2011-09-05
作者: 13966837 发布时间: 2011-09-05
作者: TNT9527 发布时间: 2011-09-05
不会
作者: 13966837 发布时间: 2011-09-05
13966837 发表于 2011-9-5 15:28
哦! 兄台.. 请您指教一下.. 我要更高的效率. 该怎么办呢?
作者: 北极猫 发布时间: 2011-09-05
作者: 北极猫 发布时间: 2011-09-05
kawais 发表于 2011-9-5 15:25
分就给你了. 这是一种探索的精神.楼上也许回答对了.但是没有讲为什么?? 是主观猜测还是已经知道运行原理? 没说.
作者: 北极猫 发布时间: 2011-09-05
作者: fireye 发布时间: 2011-09-05
作者: imint0 发布时间: 2011-09-05
作者: llh110220 发布时间: 2011-09-05
北极猫 发表于 2011-9-5 15:40
在and运算中,第一个不成立,则退出判断。
在or运算中,第一个成立,则退出判断。
可以用代码验证测试,也可以从逻辑推理去推导,能够开发语言的人都是牛人,不会犯那么低级的错误的。
作者: 单骑闯天下 发布时间: 2011-09-05
imint0 发表于 2011-9-5 16:29
哇! 原来这叫逻辑短路呀 学习了... HOH
作者: 北极猫 发布时间: 2011-09-05
作者: goyem 发布时间: 2011-09-05
goyem 发表于 2011-9-5 16:38
为什么呢?? 不是一样的吗?
作者: 北极猫 发布时间: 2011-09-05
作者: TNT9527 发布时间: 2011-09-05
作者: 剑枫 发布时间: 2011-09-05
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28