将数组从控制器传递到视图再传递到视图


Passing arrays from controller to view to again view

这是我的控制器代码。。

 $data1['billing_info']=$this->billings->get_info1($billing_id);
    $data2['sale_info']=$this->billings->get_sale_info($billing_id);
    $data3['sale_payment_info']=$this->billings->get_sale_payment_info($billing_id);
    $data['all_modules']=$this->Module->get_all_modules();
    $array=array('data1'=>$data1,
                    'data2'=>$data2,'data3'=>$data3,);
                    print_r($array);
 $this->load->view("billing/form1",$array);

这是我的form1.php代码

<?php $this->load->view("billing/form_basic_info1"); ?>

所以我想再次将$array传递给form_basic_info1视图。那我该怎么做呢??

默认情况下,子视图可以访问父视图的变量。

在controller e.x中,您有$array['name'],在第一个视图中,您可以访问$name,正如我所知,您不能将整个控制器的数组传递给第二个视图。在你看来试试这个:

//first view
//you have access to $name from controller
$data['new_name'] = array();
foreach($name as $row){
    array_push($data['new_name'], $row->name);
}
//pass $data to other view