首頁 >後端開發 >php教程 >如何在 PHP 中正確實作嵌套三元運算子以避免意外結果?

如何在 PHP 中正確實作嵌套三元運算子以避免意外結果?

Patricia Arquette
Patricia Arquette原創
2024-12-16 21:38:21409瀏覽

How Can I Correctly Implement Nested Ternary Operators in PHP to Avoid Unexpected Results?

PHP 中的巢狀三元運算子:已解決的難題

嵌套三元運算子提供了一種簡潔而算符提供了一種簡潔而算符強大的方法來在PHP 中進行條件賦值。然而,當使用多個運算符時,正確的語法變得至關重要。

問題

考慮以下代碼:

$province = 7;
$Myprovince = (
($province == 6) ? "city-1" :
($province == 7) ? "city-2" :
($province == 8) ? "city-3" :
($province == 30) ? "city-4" : "out of borders"
);

儘管打算根據省份值選擇一個城市,代碼將「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")))
);

工作原理

最裡面的三元運算子評估條件($province == 8) 並分配「 city” -3" 如果true 或繼續下一個運算子如果false。外面的三元運算子評估條件($province == 6) 並分配「city-1」 " 如果為true 或繼續執行其餘選項,如果$province 為30,則最終分配“city-4”,否則分配“out of border”。

以上是如何在 PHP 中正確實作嵌套三元運算子以避免意外結果?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn