【问题标题】:Passing arrays from controller to view to again view将数组从控制器传递到视图以再次查看
【发布时间】:2015-02-27 07:31:32
【问题描述】:

这是我的控制器代码..

 $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 视图。那我该怎么做呢?

【问题讨论】:

标签: php codeigniter view controller


【解决方案1】:

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

【讨论】:

    【解决方案2】:

    在控制器 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
    

    【讨论】:

    • @KedarB 那么,现在有什么问题?正如我上面提到的,例如在控制器中,您从数据库中检索一些数据。然后你把它们放到一个多维数组中。 (也没有必要使用 data1,data2,...!只要数据就足够了)然后将数据传递给第一个视图,然后将它们放入带有 foreach 循环的数组中。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-06-11
    • 2011-07-19
    • 1970-01-01
    • 1970-01-01
    • 2017-09-02
    • 1970-01-01
    相关资源
    最近更新 更多