发送codeIgniter result_array以在视图中访问

时间:2018-10-17 13:08:23

标签: php codeigniter

当我加载codeIgniter文件时,我使用print_r获得的结果不会发送到视图文件。请帮忙吗?

型号

class Tether extends CI_Model {
public $table='';
public $primary_key='';

    public function fetch_data(){
    $this->db->select('*');
    $this->db->from($this->table);
    $this->db->order_by($this->primary_key,'desc');
    return $this->db->get()->result_array();        
   }

控制器

    public function index(){    
    $task=new Tether;
    $task->table=$this->table;
    $query=$task->fetch_data();
    print_r($query);
    $this->load->view('layout_chart',$query);

print_r结果是:

Array([0] => Array([trend_id] => 1 [month] => 1月[year] => 2015 [amount] => 10000)[1] => Array([trend_id] => 2 [month] => 2月[year] => 2015 [amount] => 15000)[2] => Array([trend_id] => 3 [month] => 3月[year] => 2015 [amount] => 20000 )

3 个答案:

答案 0 :(得分:0)

控制器:

$query['result'] = $task->fetch_data();

在layout_chart视图中:

print_r($result);

答案 1 :(得分:0)

@Niall的回答是正确的。但是,了解将数据传递到视图的机制很重要。

数据应作为数组传递到$this->load->view()。数组的键成为视图中的变量。换句话说,在下面的代码中,我们创建了一个带有两个键k1k2的数组,该键被发送到视图。

$data = array('k1' => "Hello", 'k2' => "World!");
$this->load->view('hi_view', $data);

然后在hi_view.php中,两个数组键成为变量$k1$k2

<?php
echo $k1 . " " . $k2;  //outputs Hello World!

希望除了“答案”之外还能提供理解。

答案 2 :(得分:0)

我终于通过对控制器的以下修改将其修复了

$query['hi']=$task->fetch_data();

$this->load->view('hi_view', $query);

谢谢大家的支持!