首頁 >後端開發 >php教程 >為什麼 PHP 中的嵌套三元運算子會傳回意外結果?

為什麼 PHP 中的嵌套三元運算子會傳回意外結果?

Linda Hamilton
Linda Hamilton原創
2024-12-28 21:02:18413瀏覽

Why Are My Nested Ternary Operators in PHP Returning 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"
);

在此代碼中,您打算根據 $province 的值分配不同的城市名稱。但是,由於三元運算子未正確嵌套,每個值都會得到「city-4」。

要正確使用巢狀三元運算符,您需要將每個三元運算子括在括號內。正確的程式碼應如下所示:

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

透過這種方式嵌套三元運算符,程式碼將以正確的順序評估條件,並根據 $province 的值分配適當的城市名稱。

以上是為什麼 PHP 中的嵌套三元運算子會傳回意外結果?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

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