举个例子:
<?php
$i = 1;
$i += 2;
$i =+ 5;
echo $i; // 5
这表明=+
是一个赋值运算符。不过,这对我来说非常困惑,而且根本不是语义上的。我花了几个小时调试一些东西只是因为我不小心使用了=+
而不是+=
。但前者并没有抛出错误。所以我很好奇:=+
的用例是什么。你什么时候(需要)在一个简单的=
上使用它?
答案 0 :(得分:3)
=+
不是运营商。把它想象成
$i = +5;
而不是
$i = -5;
答案 1 :(得分:0)
=+
不是单个运营商。它的两个:赋值(=
)和一元加号(+
)。
如果你插入不同的空格,那就显而易见了:
$i = +5;
PHP中的一元加号用于将$i
转换为int
或float
。由于5
已经是一个int,在这种情况下它的标识,整个表达式在语义上等同于:
$i = 5;
答案 2 :(得分:0)
正如您所提到的, + = 是一个赋值运算符是正确的。
在你的情况下:
$i = 1;
只需将值1分配给$i
,然后当第二行执行$i += 2;
时,只需将值2添加到现有值$i
。
现在,当您在第三行使用$i =+ 5;
时,重新分配变量$i
,其值为 +5 。
与 = + 和 + = 没什么大不相同。