加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

php编程中echo用逗号和用点号连接的区别

发布时间:2020-12-12 21:25:19 所属栏目:PHP教程 来源:网络整理
导读:里面提到了echo 字符串用,比用.连接要好。原因先不说,先来看以下两句 结果是什么? 我只能说echo '5+1=' . 1+5;的结果是10,所以结果是6和2. 为什么会这样.难道在PHP中加法是没有交换律的?当然不是..我们先不去想为什么.如果我把上面的点号换成逗号试下. 可

里面提到了echo 字符串用,比用.连接要好。原因先不说,先来看以下两句

我们给前面的加个括号后.得到的结果是一样的.

证明PHP是先连接字符串再进行加法计算了.按照从左向右的方向进行的.

那么好.既然是先连接的字符串.那么就应该是"1+55"了.然后再用这个字符串加上1.那为什么就会输出2呢?

这个跟PHP中字符串变成数字的机制是相关的.我们来看下面的例子

从上面的例子我们可以看出.如果将一个字符串强制转换成一个数字.PHP会去搜索这个字符串的开头.如果开头是数字就转换.

如果不是就直接返回0.

回到刚才的1+55.既然这个字符串是1+55.所以强制类型转换后就应该是1了.在此基础上加1.当然是2了. 为了证明我们的猜想.我们来验证一下.

至于为啥快,可以简单理解,用.是先拼接在echo,虽然逗号个数代表echo的调用次数(可以这么理解暂时)。 但是拼接的速度要小于echo的速度。 如果深入理解,VLD如下图。是@tywei大神的图

上面比下面多了个CONCAT,下面比上面多了个echo。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读