HTML语言中 行中断标记为,在这里代码中,php为什么不使用html中断行标记?_php_开发99编程知识库...

看来我得在这里清理一些东西。

让我们看一下运算符优先级,它表示:. 具有比 += 。-= 。*= 。/= 更高的优先级

. 为左关联

=,+=,-=,*=,/= 为右关联

我们还将看一下手册底部的注释:

注意:的优先级高于其他大多数运算符,但是PHP仍然允许类似于以下的表达式: 如果( $a = foo ( ) ),在这种情况下,foo()的返回值将放入 $a. !

意味着即使 =的优先级比 . 低得多,它首先会得到评估。 如果你执行如下操作,你也可以看到:$xy ="HERE";

echo"I am". $xy ="NOT HERE";

现在,你将认为 . 优先级比 = 高,并且将首先评估,但如手册中的注释所示:echo"I am". ($xy ="NOT HERE");

输出:I am NOT HERE

因此,如果把这些信息放在一起,我们可以说,赋值首先得到计算,但它是正确的。 意思是:$var1 = 3;

echo"Addition =". ($var1 += 3."
");

echo"Subtraction =". ($var1 -= 3."
");

echo"Addition =". ($var1 *= 3."
");

echo"Addition =". ($var1/= 3."
");

这样代码就会出现在下面:echo"Addition =". ($var1 +="3
");

echo"Subtraction =". ($var1 -="3
");

echo"Addition =". ($var1 *="3
");

echo"Addition =". ($var1/="3
");echo"Addition =". ($var1 += 3);

echo"Subtraction =". ($var1 -= 3);

echo"Addition =". ($var1 *= 3);

echo"Addition =". ($var1/= 3);

完成赋值后,将计算连接,如下所示:echo"Addition =". 6;

echo"Subtraction =". 3;

echo"Addition =". 9;

echo"Addition =". 3;

这样,你将在输出中结束:Addition = 6Subtraction = 3Addition = 9Addition = 3

现在如何解决这个问题? 简单地把你的赋值用括号括起来,这样
标签就不会被赋值。 E.g.echo"Addition =". ($var1 += 3)."
";

echo"Subtraction =". ($var1 -= 3)."
";

echo"Multiplication =". ($var1 *= 3)."
";

echo"Division =". ($var1/= 3)."
";

//^ ^ So the br tag doesn't get in the assignment of the variable.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值