算術演算子
+ | |
- | |
* | |
/ | 除算演算子は常に浮動小数点数を返します。唯一の例外は、両方のオペランドが整数 (または文字列から変換された整数) で、正確に割り切れる場合であり、その場合は整数を返します。 |
% | モジュロ演算子のオペランドは、演算前に整数 (小数部を除く) に変換されます。モジュロ演算子 % の結果は、被除数と同じ符号 (符号) になります。つまり、 a b の結果は $a と同じ符号を持ちます。 |
echo (5 % 3)."\n"; // prints 2echo (5 % -3)."\n"; // prints 2echo (-5 % 3)."\n"; // prints -2echo (-5 % -3)."\n"; // prints -2
基本的な代入演算子は「=」です
基本的な代入演算子に加えて、すべての二項算術演算子、配列コレクション演算子、および文字列演算子に適した「組み合わせ演算」があります Symbol"
$a = 3;$a += 5; // sets $a to 8, as if we had said: $a = $a + 5;$b = "Hello ";$b .= "There!"; // sets $b to "Hello There!", just like $b = $b . "There!";
$a & $b | And (ビット単位の AND) | は、両方とも 1 である $a と $b のビットを 1 に設定します |
$a | $b | Or (ビットごとの OR) | $a と $b の 1 対 1 のビットを設定します |
$a ^ $b | Xor (ビットごとの排他的 OR) | $a と $b のビットを設定しますそれは 1 で、もう 1 つは 0 から 1 です |
~ $a | Not (ビットごとの否定) | $a のビットを 0 から 1 に設定し、その逆も同様です |
$a << $b | 左シフト | $a のビットを左に $b 回シフトします (各移動は「2 を掛ける」ことを意味します) |
$a >> $b | 右シフト (右シフト) | $a のビットを右に $b 回シフトします (各移動は「2 で割る」ことを意味します) |
左にシフトすると、右側にゼロが埋め込まれ、符号ビットが削除されます。符号は保持されていません。右にシフトすると、左側に符号ビットが埋め込まれます。これは、符号が保持されることを意味します。
比較演算子$a == $b | Equals | TRUE、型変換後の $a が $b | と等しい場合||||||||||||||||||||||||||||||||||||
$a === $b | Congruent | 本当、$a が $b と等しく、それらの型も同じ場合 | ||||||||||||||||||||||||||||||||||||
$a != $b | 等しくない | TRUE、型変換後に $a が $b と等しくない場合 | ||||||||||||||||||||||||||||||||||||
$a <> $b | 等しくない | TRUE、$a が $b | と等しくない場合||||||||||||||||||||||||||||||||||||
$a !== $b | 等しくない | TRUE、$a が等しくない場合$b と等しいか、異なる型です | ||||||||||||||||||||||||||||||||||||
$a < $b | より小さい $a が $b | より小さい場合|||||||||||||||||||||||||||||||||||||
より大きいthan | $ a が $b | より厳密に大きい場合は TRUE|||||||||||||||||||||||||||||||||||||
以下 | $a が $b | |||||||||||||||||||||||||||||||||||||
以上 | TRUE ($a が $b | 以上の場合) |
$a and $b | And(逻辑与) | TRUE,如果 $a 和 $b 都为 TRUE |
$a or $b | Or(逻辑或) | TRUE,如果 $a 或 $b 任一为 TRUE |
$a xor $b | Xor(逻辑异或) | TRUE,如果 $a 或 $b 任一为 TRUE,但不同时是 |
! $a Not(逻辑非) | TRUE,如果 $a 不为 TRUE | |
$a && $b | And(逻辑与) | TRUE,如果 $a 和 $b 都为 TRUE |
$a || $b | Or(逻辑或) | TRUE,如果 $a 或 $b 任一为 TRUE |
“与”和“或”有两种不同形式运算符的原因是它们运算的优先级不同
有两个字符串(string)运算符。第一个是连接运算符(“.”),它返回其左右参数连接后的字符串。第二个是连接赋值运算符(“.=”)
数组运算符$a + $b | 联合 | $a 和 $b 的联合 |
$a == $b | 相等 | 如果 $a 和 $b 具有相同的键/值对则为 TRUE |
$a === $b | 全等 | 如果 $a 和 $b 具有相同的键/值对并且顺序和类型都相同则为 TRUE |
$a != $b | 不等 | 如果 $a 不等于 $b 则为 TRUE |
$a <> $b | 不等 | 如果 $a 不等于 $b 则为 TRUE |
$a !== $b | 不全等 | 如果 $a 不全等于 $b 则为 TRUE |
instanceof 用于确定一个 PHP 变量是否属于某一类 class 的实例
版权声明:本文为博主原创文章,未经博主允许不得转载。