PHP 的有趣行為:解開求和與串聯困境
在PHP 編程領域,最近關於添加時令人困惑的行為的討論連結值激發了好奇心。
讓我們深入研究這個異常,如以下程式碼片段所示:
<code class="php">$a = 1; $b = 2; echo "sum: " . $a + $b; echo "sum: " . ($a + $b);</code>
執行此程式碼時,人們會期望兩個回顯都會輸出「總和:3」。然而,令人驚訝的是,第一個回顯顯示“2”,讓開發人員感到困惑。為什麼會出現這種情況?
關鍵在於PHP中的運算子優先權和結合性。加法 ( ) 和串聯 (.) 運算子共享相同的優先級,使它們具有左結合性。這些運算子的求值順序變得至關重要:
但是,在第二個回顯中,括號確保加法發生在串聯之前,給出我們得到了想要的結果,「sum: 3」。
這種有趣的行為雖然沒有明確記錄,但可以透過實驗和理解 PHP 中運算子優先順序和關聯性的細微差別來發現。
以上是為什麼 PHP 在新增和連接整數時會回顯「2」?的詳細內容。更多資訊請關注PHP中文網其他相關文章!