传递给视图的相同数据变量

时间:2011-05-30 09:03:43

标签: php codeigniter

在我的项目中,我有一个带有3个选择框的搜索部分。我使用

将值传递给它
$data['restaurant_all']=$this->restaurant_model->get_all('','','','','','yes')->result();
$data['state_all']=$this->state_model->get_all();
$data['menu_all']=$this->menu_model->get_all('all','','','','','','yes')->result();
$data['restaurant']=$this->input->post('restaurant');
$data['state']=$this->input->post('area');
$data['food_type']=$this->input->post('menu');

我需要在所有页面中使用此声明。在没有在所有页面中编写这些语句的任何方法来实现这一点

2 个答案:

答案 0 :(得分:0)

/config/constants.php

中使用常量

答案 1 :(得分:0)

一个。通过在合适的位置创建文件MY_Contoller.php来扩展默认控制器。

湾创建一个将扩展默认控制器的自定义类。

℃。将受保护或公共变量$ data添加到自定义类。

即使用__construct()

对数据执行某些操作

d。让每个控制器扩展自定义控制器。

即您可以像任何其他类变量一样访问此变量。

示例代码:

MY_Controller.php

class APP extends CI_controller {
        protected $data;

        function __construct() {
                parent::__construct();
                $this->_init();
        }

        function _init() {
                $this->data['state'] = $this->input->post('area');
        }
}

普通控制器:

class Welcome extends APP {

        function __construct() {
                parent::__construct();
        }            

        function view() {
               /* pass this data value like normal data param */
               $this->load->view('some_view', $this->data);
        }
}
希望它有所帮助。