运算符优先级

从上倒下以此递减.

结合方向 运算符 附加信息

非结合 new new

左 [ array()

非结合 ++ -- 递增/递减运算符

非结合 ! ~ - (int) (float) (string) (array) (object) @ 类型

左 * / % 算数运算符

左 + - . 算数运算符和字符串运算符

左 << >> 位运算符

非结合 < <= > >= 比较运算符

非结合 == != === !== 比较运算符

左 & 位运算符和引用

左 ^ 位运算符

左 | 位运算符

左 && 逻辑运算符

左 || 逻辑运算符

左 ? : 三元运算符

右 = += -= *= /= .= %= &= |= ^= <<= >>= 赋值运算符

左 and 逻辑运算符

左 xor 逻辑运算符

左 or 逻辑运算符

左 , 多处用到