#PHP オペレーターの優先順位
PHP オペレーターの優先順位は、コンピューターが式を計算するときに操作が実行される順序を表します。優先度の高い操作が最初に実行され、次に優先度の低い操作が続きます。たとえば、最初に乗算と除算が実行され、次に加算と減算が実行されるとよく言います。php 演算子の優先順位
次の表に、演算子の優先順位を高いものから低いものまで示します。同じ行内の演算子の優先順位は同じであり、演算子の優先順位は式の左から右に評価されます。演算子 | 追加情報 | 1 | |
---|---|---|---|
#クローンを新規に作成 | #クローンを作成して新規 | ##2 |
左 |
array() |
|
3 | 非結合|
-- | インクリメント/デクリメント演算子 |
| 4
非結合 |
Type | 5 |
非関連 | |
#タイプのインスタンス | ##6 右の組み合わせ |
! | |
論理演算子 | 7 左 |
*/ % | |
算術演算子 | 8 left |
-. | |
算術演算子と文字列演算子 | 9 left |
<<> ;> | |
ビット演算子 | 10 非結合 |
<<= >> =<> | |
11 | 非結合#==! ====!== |
比較演算子 | |
12 | left | & |
ビット単位の演算子と参照 |
13 | left | ^ |
ビット単位の演算子 |
14 | left | | |
ビット単位の演算記号 |
left | &&
| 論理演算子
||
left | ||
| 論理演算子
||
left | ?:
| 三項演算子
||
右 | = = -=*=/= .= %= &= |= ^= <<= >>=
| 代入演算子
||
left | および
| 論理演算子
||
left | #xor | 論理演算子 |
|
left | or | 論理演算子 |
|
left | , |
|
|
は、 | ペアが同じであることを示すために多くの場所で使用されます。優先順位演算子の場合、左結合方向は評価が同じであることを意味します。は左から右へ、右の関連方向はその逆を意味します。結合方向のない同じ優先順位を持つ演算子は、それ自体と結合できない可能性があります。 | たとえば、PHP 1 < 2 > 1 では、 1 は不正なステートメントですが、 1 <= 1 == 1 は不正ではありません。なぜなら、<= は == よりも優先されるからです。
<?php $a = 3 * 3 % 5; // (3 * 3) % 5 = 4 $a = true ? 0 : true ? 1 : 2; // (true ? 0 : true) ? 1 : 2 = 2 $a = 1; $b = 2; $a = $b += 3; // $a = ($b += 3) -> $a = 5, $b = 5 // mixing ++ and + produces undefined behavior $a = 1; echo ++$a + $a++; // may print 4 or 5 ?>
ログイン後にコピー
| したがって、PHP 操作の優先順位が明確であるという前提の下では、演算子を記述するときに優先順位をマークするために括弧を使用することが最善です。これは読みやすく、プログラミングの良い習慣でもあります。
PHP 関連の知識について詳しくは、 |
以上がPHP演算子の優先順位は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。