首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >为什么在连接时必须向+-操作添加括号?

问为什么在连接时必须向+-操作添加括号?
EN

Stack Overflow用户
提问于 2016-02-02 11:23:51
回答 1查看 225关注 0票数 5

我正在编写一个小程序时,遇到了一些奇怪的事情。如果我希望PHP用echo语句表示加或减的算术操作,则必须添加括号的操作结果,否则html页面将不显示操作,而只显示结果。

下面是一个简化的例子。

第一种情况(不加括号):

代码语言:javascript
复制
$a = 10;
$b = 5;
echo "$a + $b = ".$a + $b."<br>"; // 15
echo "$a - $b = ".$a - $b."<br>"; // 5
echo "$a * $b = ".$a * $b."<br>"; // 10 * 5 = 50
echo "$a / $b = ".$a / $b."<br>"; // 10 / 5 = 2
echo "$a % $b = ".$a % $b."<br>"; // 10 % 5 = 0

第二种情况(加括号):

代码语言:javascript
复制
$a = 10;
$b = 5;
echo "$a + $b = ".($a + $b)."<br>"; // 10 + 5 = 15
echo "$a - $b = ".($a - $b)."<br>"; // 10 - 5 = 5
echo "$a * $b = ".($a * $b)."<br>"; // 10 * 5 = 50
echo "$a / $b = ".($a / $b)."<br>"; // 10 / 5 = 2
echo "$a % $b = ".($a % $b)."<br>"; // 10 % 5 = 0

有人能解释一下为什么会发生这种事吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2016-02-02 11:36:58

从马克·贝克的“链接”你可以看到

加法、减法和串连接具有同等的优先级!

在echo "$a + $b = ".$a + $b."<br>"; //15中

将第一个字符串文本和$a的值连接起来,然后隐式地将其转换为一个数字(10),这样就可以将$b添加到其中,然后将最终的字符串文本连接起来。

当你把它放在括号中时,加法被视为数字(15),因此没有使用字符串的数学运算。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/35152105

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档