[PHP] - 逗号和点号的区别
1. echo 'abc'.'def'; //用点号连接字符串
2. echo 'abc','def'; //用逗号连接字符串
也许很多人都知道逗号要比点号快.但是不知道为什么.更不知道这两者到底有什么区别.
那么下面我们就举一些例子.来认清楚他们之前的区别.
1. echo '1+5=' . 1+5;
看看上面的.输出的结果是6..而不是1+5=6.有些神奇吧?
更神奇的是你看下面的例子.
1. echo "1+5=" . 5+1; //输出2
结果十分奇怪.我们看到.我们把5和1换下位置.结果就变成2了.
为什么会这样.难道在PHP中加法是没有交换律的?当然不是..
我们先不去想为什么.如果我把上面的点号换成逗号试下.
1. echo '1+5=' , 5+1; //输出 1+5=6
2. echo '1+5=' , 1+5; //输出 1+5=6
可以看出.只有使用逗号我们才可以得到意料中的结果.
那为什么点号就不行呢?逗号为什么就行呢?
1. echo ('1+5' . 5)+1; //输出2
我们给前面的加个括号后.得到的结果是一样的.证明PHP是先连接字符串再进行加法计算了.按照从左向右的方向进行的.
那么好.既然是先连接的字符串.那么就应该是"1+55"了.然后再用这个字符串加上1.那为什么就会输出2呢?
这个跟PHP中字符串变成数字的机制是相关的.我们来看下面的例子
1. echo (int)'abc1'; //输出0
2. echo (int)'1abc'; //输出1
3. echo (int)'2abc'; //输出2
4. echo (int)'22abc'; //输出22
从上面的例子我们可以看出.如果将一个字符串强制转换成一个数字.PHP会去搜索这个字符串的开头.如果开头是数字就转换.如果不是就直接返回0.
回到刚才的1+55.既然这个字符串是1+55.所以强制类型转换后就应该是1了.在此基础上加1.当然是2了.
为了证明我们的猜想.我们来验证一下.
1. echo '5+1=' . 1+5; //输出10
2. echo '5+1=' . 5+1; //输出6
3. echo '1+5=' . 1+5; //输出6
4. echo '1+5=' . 5+1; //输出2
结果证明.我们的设想是正确的.
那么为什么使用逗号就没有上面的问题了呢?
手册上说了.用逗号是multiple parameters.
也就是说是多参数.换句话说.
逗号分隔开的就相当于是N个参数.也就是说把echo当个函数用.
这样的话.echo会对每个参数先进行计算.最后再进行连接后输出.所以我们用逗号就不存在上面的问题了
转载于:https://www.cnblogs.com/xiaorenwu702/p/6148331.html
[PHP] - 逗号和点号的区别相关推荐
- php点号的意思,[PHP] - 逗号和点号的区别
[PHP] - 逗号和点号的区别 比如: 1. echo 'abc'.'def'; //用点号连接字符串 2. echo 'abc','def'; //用逗号连接字符串 也许很多人都知道逗号要比点号快 ...
- php 点号作用,探讨:PHP中逗号与点号的区别
在php中,逗号要比点号快,究竟原因有几何呢?本文将为大家一一说来. 先看代码: echo 'abc'.'def'; //用点号连接字符串 echo 'abc','def'; //用逗号连接字符串 / ...
- 深入解析PHP中逗号与点号的区别
大部分同学都知道逗号要比点号快,但就是不知道为什么,更不知道逗号与点号这两者之间到底有什么区别.下面小编就来详细的为大家介绍一下,需要的朋友可以过来参考下 echo 'abc'.'def'; //用点 ...
- PHP - 逗号和点号的区别
php点号(.)和逗号(,)作用都是链接字符串 echo '点'.'号': //用点号连接字符串 输出 点号 echo '逗','号': //用逗号连接字符串 输出 逗号效果是一样的,但还是有很大区别 ...
- php 点号作用,PHP - 逗号和点号的区别
php点号(.)和逗号(,)作用都是链接字符串 echo '点'.'号': //用点号连接字符串 输出 点号 echo '逗','号': //用逗号连接字符串 输出 逗号 效果是一样的,但还是有很大区 ...
- php 点号 的用法,基于php中echo用逗号和用点号的区别详解
php 的 基于php中echo用逗号和用点号的区别详解 实例如下: echo 1+5; echo " "; echo '1+5='."1+5"." ...
- php中的点号,PHP中逗号与点号有什么区别
PHP中逗号与点号有什么区别 发布时间:2021-01-14 16:32:46 来源:亿速云 阅读:103 作者:Leah 本篇文章为大家展示了PHP中逗号与点号有什么区别,内容简明扼要并且容易理解, ...
- (双引号)与 ' '(单引号)的区别
" "(双引号)与 ' '(单引号)的区别 还是回到我们的command line来吧 经过前面的学习,应该很清楚当你在shell prompt后面敲打键盘.直到按下enter的时 ...
- 服务器和微信公众号的区别,微信小程序和公众号的区别,看这三点就懂了
原标题:微信小程序和公众号的区别,看这三点就懂了 第一点就是定位不同,小程序主要用来面向产品和服务,而公众号则是用于销售和传递信息.小程序在功能上和公众号有本质的区别(不支持关注,没有粉丝体系.消息推 ...
最新文章
- c7pro android7,三星c7pro和iphone7哪个值得买?三星Galaxy c7 pro和苹果iphone7区别对比详细评测...
- 障碍期权定价 python_[宜配屋]听图阁
- intouch负值显示0_excel 应用中计算结果显示为负数,使负数显示为0应如何操作?...
- bugzilla dbd-mysql_在Red Hat Linux下安装配置Bugzilla
- 错误fatal error: zlib.h: 没有那个文件或目录的解决办法
- php获取访问浏览器,php获取访问者浏览器
- 如何在一个html页面中提交两个post,如何在同一个页面上从Django和Ajax获得多个post请求?...
- [转]阿里云配置mysql远程连接
- 调整oracle数据库编码
- MySQL | MySQL 数据库系统(四)- 数据库的备份与恢复
- Kaldi AMI数据集脚本学习6---转移模型(Transition Model)
- Delphi XE 10.2.3如何添加PDF阅读器组件
- web前端工程师岗位职责、岗位要求
- SAS: PROC IMPORT简单入门介绍
- 长连接如何转换为短连接格式呢?
- java x86 x64_jdk x86与jdk x64 有什么区别
- TypeError: parentComponent.ctx.deactivate is not a function
- 二十、融会贯通之全流程操作
- win10 计算机磁盘加内存,内存不够用?教你给Win10系统增加C盘空间
- 同花顺编程入门(一)
热门文章
- 收藏 | 12个神经网络可视化工具!
- 收藏 | 万字长文带你理解Pytorch官方Faster RCNN代码
- 【资源】《可解释的机器学习》,让机器学习不再神秘!
- 带你自学Python系列(十一):Python函数的用法(一)
- 大数据预测实战-随机森林预测实战(四)-模型调参
- nginx location proxy_pass 后面的url 加与不加/的区别
- java 所有路径算法_经典算法题:二叉树的所有路径
- 使用 Windows Sysinternals 工具进行故障排除
- winform中openfiledialog过滤压缩文件格式_5种最佳摄影师图像文件格式
- C++基础学习8:类的定义(class)