缩短按位方程

Shortening bitwise equations

提问人:Styphon 提问时间:3/25/2013 最后编辑:Styphon 更新时间:3/25/2013 访问量:387

问:

类似于如何缩短正负:

$x = $x + 5;

成为

$x += 5;

你能用按位运算符做类似的事情吗?例如,在应用 XOR 时,以下内容是否有效?

$x = $x ^ 1;

成为

$x ^= 1;

测试了这个简单的脚本后,它似乎有效,但是使用它是否正确,或者我在这里偏离了轨道?

php 按位运算符 xor 赋值运算符

评论

0赞 Madara's Ghost 3/25/2013
@MihaiIorga:该术语是作业:)
0赞 Mihai Iorga 3/25/2013
分配。。作业:)
2赞 Styphon 3/25/2013
如果你要否定这个问题,至少要评论一下为什么。

答:

0赞 Madara's Ghost 3/25/2013 #1

是的,在“分配运算符”页面上的此评论中提到了它

Assignment    Same as:
$a += $b     $a = $a + $b    Addition
$a -= $b     $a = $a - $b     Subtraction
$a *= $b     $a = $a * $b     Multiplication
$a /= $b     $a = $a / $b    Division
$a %= $b     $a = $a % $b    Modulus

See the String Operators page(http://www.php.net/manual/en/language.operators.string.php)
$a .= $b     $a = $a . $b       Concatenate

See the Bitwise Operators page (http://www.php.net/manual/en/language.operators.bitwise.php)
$a &= $b     $a = $a & $b     Bitwise And
$a |= $b     $a = $a | $b      Bitwise Or
$a ^= $b     $a = $a ^ $b       Bitwise Xor
$a <<= $b     $a = $a << $b     Left shift
$a >>= $b     $a = $a >> $b      Right shift
1赞 scones 3/25/2013 #2

是的,这是正确的。

来自 http://www.php.net/manual/en/language.operators.assignment.php (第一条评论)

See the Arithmetic Operators page (http://www.php.net/manual/en/language.operators.arithmetic.php)
Assignment    Same as:
$a += $b      $a = $a + $b    Addition
$a -= $b      $a = $a - $b    Subtraction
$a *= $b      $a = $a * $b    Multiplication
$a /= $b      $a = $a / $b    Division
$a %= $b      $a = $a % $b    Modulus

See the String Operators page(http://www.php.net/manual/en/language.operators.string.php)
$a .= $b      $a = $a . $b       Concatenate

See the Bitwise Operators page (http://www.php.net/manual/en/language.operators.bitwise.php)
$a &= $b      $a = $a & $b     Bitwise And
$a |= $b      $a = $a | $b     Bitwise Or
$a ^= $b      $a = $a ^ $b     Bitwise Xor
$a <<= $b     $a = $a << $b    Left shift
$a >>= $b     $a = $a >> $b    Right shift