算数において、掛け算を、足し算よりも優先するように、PHPの演算子にも、優先順位がある。優先したい演算を()で括ることで、優先順位を変更することもできる。優先順位が同じときは、結合規則(左から評価するか、右から評価するか)に基づき優先順位が決まる。
優先順位一覧
| 優先順位 | 演算子 | 結合規則 |
|---|---|---|
| 1 | new, clone |
非結合 |
| 2 | [ |
左 |
| 3 | ++, -- |
非結合 |
| 4 | ~ -, (int), (float), (string), (array), (object), (bool), @ |
右 |
| 5 | instanceof |
非結合 |
| 6 | ! |
右 |
| 7 | *, /, % |
左 |
| 8 | +, -, . |
左 |
| 9 | <<, >> |
左 |
| 10 | <, <=, >, >=, <> |
非結合 |
| 11 | ==, !=, ===, !== |
非結合 |
| 12 | & |
左 |
| 13 | ^ |
左 |
| 14 | | |
左 |
| 15 | && |
左 |
| 16 | || |
左 |
| 17 | ?, : |
左 |
| 18 | =, +=, -=, *=, /=, .=, %=, &=, |=, ^=, <<=, >>=, => |
右 |
| 19 | and |
左 |
| 20 | xor |
左 |
| 21 | or |
左 |
| 22 | , |
左 |