PHP 中的巢狀三元運算子:陷阱與解
在PHP 中,三元運算子提供了一個簡潔而優雅的方式來有條件地賦值。雖然它們是一個強大的工具,但正確使用它們以避免意外結果至關重要。
嵌套多個三元運算子時會出現一個常見問題,如以下程式碼所示:
$province = 7; $Myprovince = ( ($province == 6) ? "city-1" : ($province == 7) ? "city-2" : ($province == 8) ? "city-3" : ($province == 30) ? "city-4" : "out of borders" );
執行後,無論$province 的值為何,此程式碼都會錯誤地將「city-4」分配給$Myprovince。問題在於三元運算子的巢狀沒有正確分組。
要解決此問題,需要使用括號來確保三元運算子以正確的順序求值。修正後的程式碼如下:
$province = 7; $Myprovince = ( ($province == 6) ? "city-1" : (($province == 7) ? "city-2" : (($province == 8) ? "city-3" : (($province == 30) ? "city-4" : "out of borders"))) );
透過此修改,三元運算子可以正確嵌套,並且程式碼可以正確地將「city-2」分配給 $Myprovince,因為 $province 等於 7。
以上是在 PHP 中嵌套三元運算子時如何避免錯誤?的詳細內容。更多資訊請關注PHP中文網其他相關文章!