如何在php中使用三元运算符为多个变量赋值?

问题描述 投票:-1回答:1

我在codeigniter中使用if语句完成了我的逻辑,但是我想使用三元运算符来完成以下代码:

<?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);

我知道我可以为单个变量赋值,但我想在三元表达式中分配多个变量。我该怎么做?

php codeigniter variables variable-assignment ternary-operator
1个回答
0
投票

当我尝试和玩许多变通办法时,我找到了一个绝对可行的方法,如下所示:

<?php 

      $payment_via = $this->input->post('payment');
      ($payment_via == "bank") ? (($this->page_data['message_type'] = "paid_via_bank") && ($$this->page_data['message'] = "You have Successfully Subscribed plan via Bank cheque.")) : (($this->page_data['message_type'] = "paid_via_online") && ( $this->page_data['message'] = 'You have Successfully Subscribed plan via Online payment.'));                        

      $this->load->view('demo/checkout_msg', $this->page_data);

希望它会帮助某人。

© www.soinside.com 2019 - 2024. All rights reserved.