4

我知道在 php 中可以连接两个字符串,例如

$a .= $b;

这等于

$a = $a . $b;

是否可以用整数做一些事情?但是有数学运算?我有两个变量:

$var1 = 8;
$var2 = 2;

我需要做$var1 - $var2,但我不想创建第三个变量来保存这个计算。我会试试$var1 = $var1 + $var2这行得通吗?还有其他.=类似的方法吗?

4

6 回答 6

9

好的,因为现在每个人都很困惑

// _Appending_ $var2 to $var1 and assign it to $var1
$var1 .= $var2;
// _Add_ $var2 to $var1 and assign the result to $var1
$var1 += $var2;

没有什么比每个 二元运算符都可以与赋值相结合的了。在引擎中,它总是扩展到

$var1 = $var1 . $var2; // You can imagine how the others looks like

除了基本的赋值运算符之外,还有用于所有二进制算术、数组联合和字符串运算符的“组合运算符”,它们允许您在表达式中使用一个值,然后将其值设置为该表达式的结果。

于 2012-08-24T13:14:29.180 回答
7

我认为你需要一个字符串格式。

$var1 = sprintf( "%d%d", $var1, $var2 );

这将使您$var1成为82

于 2012-08-24T13:06:51.610 回答
3

与 C 和 C++ 一样,PHP 支持Compound_assignment_operators

所以,这条线:
$var1 = $var1 + $var2;

相当于:
$var1 += $var2;

有关这些运算符的完整列表,请查看Compound_assignment_operators

于 2012-08-24T13:04:05.900 回答
2

是的

$var1 = 1
$var2 = -1;

$var1 += $var2; // $var1 = 0
于 2012-08-24T13:03:16.290 回答
0

是的,复合赋值运算符将在 php 中作为 C 和 Java 工作。

你可以试试这样 $Var1+=$Var2;

于 2018-09-23T03:01:20.283 回答
-1
$var1=$var1-$var2;

可以正常工作,但速记运算符喜欢

$var1=-$var2 

不管用。我将 -2 设置为 $var1

速记运算符的符号是:

$var1-=$var2;
于 2012-08-24T13:08:27.507 回答