首页 文章

将数组从模型传递给控制器

提问于
浏览
2

在我的模型中,我收到了一个数组中的所有电子邮件 . 我想在控制器中显示这组电子邮件,而不是在视图中 .

我的模型是:

public function cron_job(){
     $this->db->select('email');
     $this->db->from('wc_buyer');
     $query = $this->db->get();
     return $query; 
  }

控制器是:

public function cron_job(){
    $this->load->model('home/Home_model');
    $data['a'] = $this->Home_model->cron_job();
}

如何在控制器中的变量中显示此打印数组电子邮件?

4 回答

  • 1

    试试这样,

    $data = $this->Home_model->cron_job();
    print_r($data); // To print array
    
  • 0

    试试这样吧

    public function cron_job(){
                 $this->db->select('email');
                 $this->db->from('wc_buyer');
                 $query = $this->db->get();
                 $result = array();
                 foreach ($query->result() as $row){
                    $result[] = $row;
                 }
                 return $result; 
            }
    
     public function cron_job(){
        $this->load->model('home/Home_model');
        $data['a'] = $this->Home_model->cron_job();
        print_r($data['a']);
    }
    
  • 0

    您在控制器使用 result_array() 中回显您的电子邮件

    $email=$this->Home_model->cron_job();// get data from model
    foreach ($email->result_array() as $row)// fetch data form query 
    {
            echo $row['email'];
    }
    
  • 1

    CodeIgniter提供了一个方法 result_array() ,它将生成的查询返回到数组中,在您的情况下,这样做 .

    在你的模型中

    public function cron_job(){
         $this->db->select('email');
         $this->db->from('wc_buyer');
         $query = $this->db->get();
         return $query->result_array(); 
    }
    

    在你的控制器中,

    public function cron_job(){
        $this->load->model('home/Home_model');
        $data['a'] = $this->Home_model->cron_job();
        $this->load->view('path/to/the/file', $data);
    }
    

    在你看来,

    <?php foreach ($a as $key => $value) : ?>
      <?php echo $value['your_table_field']; ?>
    <?php endforeach; ?>
    

相关问题