【发布时间】:2019-09-02 22:16:18
【问题描述】:
我使用 if 语句在 codeigniter 中完成了以下代码来实现我的逻辑,但我想使用三元运算符来完成:
<?php
$payment_via = $this->input->post('payment');
if($payment_via == "bank"){
$this->page_data['message_type'] = "paid_via_bank";
$this->page_data['message'] = "You have Successfully Subscribed plan via Bank cheque.";
}else{
$this->page_data['message_type'] = "paid_via_online";
$this->page_data['message'] = "You have Successfully Subscribed plan via Online payment.";
}
$this->load->view('payment/checkout_msg', $this->page_data);
我知道我可以为单个变量赋值,但我想在一个三元表达式中为多个变量赋值。我该怎么做?
【问题讨论】:
-
我认为使用三元表达式不会提高可读性和可维护性。我应该保留你当前的代码。
-
由于您没有多个条件,您可以将
$msg_type和$msg分别设置为默认值paid_via_online和...via Online payment.。else可以删除。 -
此外,
$msg和$msg_type变量是多余的,如果您不打算在load->view下方使用它。将值直接分配给page_data键。 -
确定@ViswalingaSuryaS 不错的建议,我会这样做,谢谢。
标签: php codeigniter variables variable-assignment ternary-operator