传递多个数组以在 codeigniter 中查看
Posted
技术标签:
【中文标题】传递多个数组以在 codeigniter 中查看【英文标题】:Pass multiple Arrays to view in code igniter 【发布时间】:2016-07-27 18:31:32 【问题描述】:我的模型是this,,,两个函数view和spl
function view()
$result = $this -> db -> get('tb_ourcity');
return $result->result_array();
//$query = $this->db->query('SELECT * from `adds`');
//return $query->result_array();
function spl()
$result2 = $this -> db -> get('td_spei');
return $result2->result_array();
//$query = $this->db->query('SELECT * from `adds`');
//return $query->result_array();
我的控制器看起来像这样
public function index()
$data['result']=$this->load_city->view();
$data2['result']=$this->load_city->spl();
$this->load->view('home_view',$data);
我有两个名为 $data 和 $data2..的数组。
我想在 home_view 中同时使用这两个数组。那么如何在单个视图中传递这两个数组
【问题讨论】:
我们不能使用:$data['result']=$this->load_city->view();
和 $data['result2']=$this->load_city->spl();
吗?
您无法在模板中同时获取 $result 和 $result2 吗?
【参考方案1】:
现在你传入你的视图$result
只包含$this->load_city->spl();
的数据
public function index()
$data['result']=$this->load_city->view();
$data2['result']=$this->load_city->spl();
$this->load->view('home_view',$data);
你可以传递两个变量,比如
METHOD 1相同的变量名更改键
public function index()
$data['data1']=$this->load_city->view();
$data['data2']=$this->load_city->spl();
$this->load->view('home_view',$data);
方法 2 合并你的数组
public function index()
$data['data1']=$this->load_city->view();
$data2['data2']=$this->load_city->spl();
$new_array = array_merge($data,$data2);
$this->load->view('home_view',$new_array );
如果你想制作快捷方式,只需在方法中直接添加
$this->load->view('home_view',array_merge($data, $data2));
【讨论】:
【参考方案2】:在你的模型中试试这个
public function index()
$data['result1']=$this->load_city->view();
$data['result2']=$this->load_city->spl();
$this->load->view('home_view',$data);
您可以将这两个数组作为 $result1 和 $result2 来查看
【讨论】:
您能否展示第二部分,我的意思是如何在视图的一个部分中只使用“result1”? 'result1' 和 'result2' 键名将用作视图文件中的变量名,不是吗? @GS-Magento【参考方案3】:public function index()
$data['result1']=$this->load_city->view();
$data['result2']=$this->load_city->spl();
$this->load->view('home_view',$data);
在home_view
中,您可以将结果称为$result1
和$result2
【讨论】:
如果result1和result2的内部是另一个数组,这可能吗?无论如何如何使用 home_view 中的变量?【参考方案4】:$data['result']=$this->load_city->view();
$data['result2']=$this->load_city->spl();
尝试这种方式,您只会在其中传递 $data。
【讨论】:
【参考方案5】:这里可以使用array_combine()
和array_merge()
组合两个数组
<?php
public function index()
$arr1 = $this->load_city->view();
$arr2 = $this->load_city->spl();
$this->load->view('home_view',array_combine($arr1, $arr2));
?>
【讨论】:
如果两个数组确实有不同数量的元素,array_combine 将不起作用以上是关于传递多个数组以在 codeigniter 中查看的主要内容,如果未能解决你的问题,请参考以下文章