PHP运算符优先级

        运算符优先级决定了运算的顺序,运算级高的先计算,如果优先级相同,那么运算符的结合方向决定了该如何运算。通过使用括号可以强制改变优先级。运算符优先级从高到低顺序如下。
        clone new:复制对象、创建对象,无结合方向。
        [:数组,结合方向左。
        **:幂运算,结合方向右。
         ++ -- ~ (int) (float) (string) (array) (object) (bool) @:递增/递减、位取反、类型转换,结合方向右。
        instanceof:类型,无结合方向。
        !:逻辑非,结合方向右。
        * / %:乘法、除法、取余,结合方向左。
         + - .:加法、减法、字符串连接,结合方向左。

        << >>:左移、右移,结合方向左。
        < <= > >=:小于、小于等于、大于、大于等于,无结合方向。
        == != === !== <> <=>:等于、不等于、全等、不全等、不等、比较运算符,无结合方向。
        &:位与、引用,结合方向左。
        ^:位异或,结合方向左。
        |:位或,结合方向左。
        &&:逻辑与,结合方向左。
        ||:逻辑或,结合方向左。
        ??:null合并操作符,结合方向左。
        ?::三目运算符,结合方向左。
        = += -= *= **= /= .= %= &= |= ^= <<= >>=:赋值运算符,结合方向右。
        and:逻辑与,结合方向左。
        xor:逻辑异或,结合方向左。
        or:逻辑或,结合方向左。

你可能感兴趣的:(PHP)