php運算子的優先順序
PHP運算子優先權,是描述在電腦運算計算表達式時執行運算的先後順序。先執行具有較高優先順序的運算,然後執行較低優先順序的運算。例如,我們常說的先執行相乘和除,再執行加減運算。
php運算子優先權的順序
下表從高到低列出了運算子的優先權。同一行中的運算子具有相同優先權,然後運算子的優先權是運算表達式從左到右。
優先權 | 結合方向 | 運算子 | 附加資訊 |
---|---|---|---|
1 | 非結合 | clone new | #clone和new |
左 | [
| array() | |
非結合 | -- | 遞增/遞減運算子 | ##4 |
~-(int)(float)(string)(array)(object)(bool)@ | 型別 | 5 | |
instanceof | #類型 | ##6 | |
! | 邏輯運算子
| 7 | |
| |||
算術運算子 | #8 | 左||
算術運算子和字串運算子 | 9 | 左||
位元運算子 | 10 | 非結合||
比較運算子 | #11 ##非結合 | ==!====!== | |
比較運算子 | #12 左 | & | |
位元運算子與參考 | 13 左 | ^ | |
位元運算子 | 14 左 | | | |
位元運算符 | 15 左 | #&& | |
邏輯運算子 | ##16 | 左 | || |
17 | 左 | ?: | |
18 | 右 | = =-=*=/= .= %= &= |= ^= 639513f5eb9d8dcbce09d6b5cb44cf73>= | |
19 | 左 | and | |
20 | 左 | xor | |
21 | 左 | or | |
22 | 左 | , |
#範例說明
##對具有相同優先順序的運算符,左結合方向意味著將從左向右求值,右結合方向則反之。對於無結合方向具有相同優先權的運算符,此運算符有可能無法與其自身結合。
舉例說,在 PHP 中 1 d66d2a93259ca9392db29f00ed43fda0 1 是非法語句,而 1 <= 1 == 1 則不是。因為<=比==優先權高。
$a = 5, $b = 5 // mixing ++ and + produces undefined behavior $a = 1; echo ++$a + $a++; // may print 4 or 5 ?>
所以在我們非常清楚PHP運算優先級的前提下,最好運算子的書寫的時候,還是要以圓括號來標記優先級,這樣可讀性強,也是一個良好的編程習慣。 更多PHP相關知識,請造訪
php中文網###! ###以上是php運算子的優先權是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!