html5不能识别 br,为什么html br break行标记在这段代码中不起作用?

Rizier123..

8

好吧我似乎要在这里清理一些东西.

我们来看看运算符优先级,它说:

.具有更高的优先级,比+=,-=,*=,/=

. 是左联想的

=,+=,-=,*=,/=是对联想

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

注意:

尽管=的优先级低于大多数其他运算符,但PHP仍然允许使用类似于以下的表达式:if(!$ 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

现在如何解决这个问题?只需将您的作业包装在括号中,这样
标记就不会进入作业.例如

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.

这个答案似乎不包含其他一些错误信息,并澄清了发生了什么以及为什么.+1 (2认同)

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值