演算子の優先順位は、2 つの式がどの程度「緊密に」結合されるかを指定します。たとえば、乗算記号 ("*") はプラス記号 (" ") よりも優先されるため、式 1 5 * 3 は 18 ではなく 16 と評価されます。必要に応じて、括弧を使用して優先順位の変更を強制できます。例: (1 5) * 3 の値は 18 です。
演算子の優先順位によって演算の順序が決まります。演算レベルが高いものが最初に計算されます。優先順位が同じ場合、演算子の組み合わせの方向によって演算の順序が決まります。操作する。括弧を使用すると、優先順位の変更を強制できます。
演算子の優先順位は高いものから低いものまで次のとおりです。
結合方向 | 演算子 | 追加情報 |
---|---|---|
clone new | clone と new | |
[ | array() | |
— ~ (int) (float) ( string ) (array) (object) (bool) @ | 型と増分/減分 | |
instanceof | Type | |
! | 論理演算子 | |
* / % | #算術演算子 | ##left |
算術演算子と文字列演算子 | left | |
ビット演算子 | なし | |
比較演算子 | 左 | |
ビット演算 記号と参照 | left | |
#ビット演算子 | left | |
ビット演算子 | ##left | |
論理演算子 | ##left | || |
left | ? : | |
右 | = = -= *= /= .= %= &= |= ^= <<= >>= => ; | |
left | and | |
left | xor | |
left | または | |
left | 、 | |
は、演算子を同じ優先順位でペアにするために多くの場所で使用されます。左の結合方向は、評価が左から右になることを意味します。正しい関連方向はその逆を意味します。結合方向のない同じ優先順位を持つ演算子は、それ自体と結合できない可能性があります。 |
=
の優先順位は他のほとんどの演算子よりも低いですが、PHP では引き続き次のような式が許可されています。 if (!$a = foo())、この場合は foo( の戻り値) が $a に代入されます。以上がPHPの演算子の優先順位は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。