【发布时间】:2015-11-02 11:05:10
【问题描述】:
我有一段代码,我想将它转换为三元运算符。任何人都可以帮忙吗?它有 1 个 if 和 2 个 else if 条件,所以我无法转换它。这是我的代码。
if ($this->session->data['desired_service']==1){
echo 'Home Delivery';
} else if ($this->session->data['desired_service']==2){
echo 'Take Away';
} else if ($this->session->data['desired_service']==3){
echo 'DinIN';
}
这是我目前使用的代码。
$service = ( $this->session->data['desired_service']== 1 ) ? "Home Delivery" : ( $this->session->data['desired_service'] == 2 ) ? "Take Away" : ( $this->session->data['desired_service'] == 3 ) ? "DinIN";
但它给了我一个语法错误。
【问题讨论】:
-
我只有一件事要说:不要。它使您的代码不可读和丑陋。
-
不要……嵌套三元组不直观,而且难以阅读……如果你现在这样做,你会在 6 周内诅咒自己改变它
-
你可以使用 switch case,但是嵌套三元将很难理解......
-
我使用了if else,但需要通过三元运算符来完成。
标签: php ternary-operator