繁体   English   中英

从控制器传递数组到视图 - Codeigniter

[英]Pass array from controller to view - Codeigniter

我尝试在控制器中打印数组,然后将其传递给视图,这是输出

Array ( [annunci] => Array ( [0] => stdClass Object ( [EmailDatore] => you@welcom.it [Nome] => asdasd [Cognome] => asdas [IdAnnuncio] => 9 [Titolo] => sfsdfdsfshrea [Testo] => agrefdgdagdfg [Categoria] => [Sede] => [TipoContratto] => [Add_Date] => [Drop_Date] => ) 
[1] => stdClass Object ( [EmailDatore] => you@welcom.it [Nome] => asdasd [Cognome] => asdas [IdAnnuncio] => 10 [Titolo] => fafa [Testo] => fafaerea asdasdas dafasfd [Categoria] => [Sede] => [TipoContratto] => [Add_Date] => [Drop_Date] => ) ) )

我在maincontroller中从这个方法中获取数组

 public function get_annunci(){


    $query=$this->user_model->annunci($this->email);        
    print_r($query);        
    }

我想将此数组传递给视图,然后读取数据。 所以我像这样重写我的方法

public function get_annunci(){
    $query=$this->user_model->annunci($this->email);        
    $this->load->view('main_view',$query);      
}

在主视图中我有这个

<div class="tab-pane active" id="annunci">
    <ul>
        <?php
        print_r($annunci);
        ?>
    </ul>
</div>

这是我的错误

A PHP Error was encountered

Severity: Notice

Message: Undefined variable: annunci

Filename: views/tab_annunci_view.php

Line Number: 4

这是因为您尚未定义$ annunci并使其可用于视图。 您需要先将其加载到视图中

调节器

$data['id'] = $yourArray;
$this->load->view('your_view_file', $data);

视图

 <?php print_r($id); ?> //prints $yourArray
public function index()
    {
        $data=$this->model->viewBlog();
        $this->load->view('blog/index',['data'=>$data]);
    }

我希望这是有效的。 如果你处理n个记录使用这个方法。

(将$query ['annunci']更改$query $query ['annunci'] )确定, $query已经是一个数组,然后只需将视图文件更改为'tab_annunci_view'

所以:

public function get_annunci(){
    $query=$this->user_model->annunci($this->email);        
    $this->load->view('tab_annunci_view',$query);      
}
public function get_annunci(){
    $query['annunci']=$this->user_model->annunci($this->email);        
    $this->load->view('main_view',$query);      
}

你正在传递数组,但你没有将annunci作为变量传递。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM