Php Codeigniter:从构造函数到视图

Php Codeigniter:从构造函数到视图,php,codeigniter,Php,Codeigniter,我想在构造函数中设置一些数据,但如果我只是这样设置:$data['something']='val',它不工作。是否可以在构造函数中设置一些数据,这些数据在同一控制器的所有其他函数中都可用,然后在视图中显示?将此设置到构造函数中 $data['something'] = 'val'; $this->load->vars($data); 如果需要,请注意不要在其他函数中使用$data['var']=value 已在构造函数方法中声明它,因为它将覆盖 构造函数变量 把这个戴上 $dat

我想在构造函数中设置一些数据,但如果我只是这样设置:
$data['something']='val',它不工作。是否可以在构造函数中设置一些数据,这些数据在同一控制器的所有其他函数中都可用,然后在视图中显示?

将此设置到构造函数中

$data['something'] = 'val';
$this->load->vars($data);
如果需要,请注意不要在其他函数中使用$data['var']=value 已在构造函数方法中声明它,因为它将覆盖 构造函数变量


把这个戴上

$data['something'] = 'val';
$this->load->vars($data);
如果需要,请注意不要在其他函数中使用$data['var']=value 已在构造函数方法中声明它,因为它将覆盖 构造函数变量

试试这个:

class globalExample extends CI_Controller
{
    public $variable = "wow";
    public function one()
    {
        echo $this->variable; // wow
    }
    public function two()
    {
        echo $this->variable; // wow
    }

}
试试这个:

class globalExample extends CI_Controller
{
    public $variable = "wow";
    public function one()
    {
        echo $this->variable; // wow
    }
    public function two()
    {
        echo $this->variable; // wow
    }

}
试试这个:

class globalExample extends CI_Controller
{
    public $variable = "wow";
    public function one()
    {
        echo $this->variable; // wow
    }
    public function two()
    {
        echo $this->variable; // wow
    }

}
如果将设置为“stuff”的数据发送到视图,则可以从所有控制器访问该数据,然后:

<?php

Class Something Extends CI_Controller {

    var $data = array(); //the data variable that will be available in all methods.

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

        $this->data['stuff'] = 'do stuff'; //the data that you set on constructor
    }


    function index(){
        $this->data['controller_stuff'] = 'controller stuff';

        $this->load->view('yourview',$this->data); //both the 'stuff' and 'controller_stuff' will be sent to the view like this.
    }

}
试试这个:

class globalExample extends CI_Controller
{
    public $variable = "wow";
    public function one()
    {
        echo $this->variable; // wow
    }
    public function two()
    {
        echo $this->variable; // wow
    }

}
如果将设置为“stuff”的数据发送到视图,则可以从所有控制器访问该数据,然后:

<?php

Class Something Extends CI_Controller {

    var $data = array(); //the data variable that will be available in all methods.

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

        $this->data['stuff'] = 'do stuff'; //the data that you set on constructor
    }


    function index(){
        $this->data['controller_stuff'] = 'controller stuff';

        $this->load->view('yourview',$this->data); //both the 'stuff' and 'controller_stuff' will be sent to the view like this.
    }

}

对于视图中的变量,需要传递
$data
数组<代码>$this->load->view('page',$data)
。您能再显示一些代码吗?这包括控制器和控制器的代码view@user1257255试试我的答案,它工作得很好,很清楚!要在视图中显示变量,需要传递
$data
数组<代码>$this->load->view('page',$data)
。您能再显示一些代码吗?这包括控制器和控制器的代码view@user1257255试试我的答案,它工作得很好,很清楚!试试这个人,你会证明的。若你们把它放在构造器中,而不是在视图中,你们可以这样打印它。请在投票前试一试!这适用于视图,但不适用于控制器中的其他函数。@ErmanBelegu:来自问题:
“…这将在同一控制器的所有其他函数中可用,然后在视图中”
这是我问题的解决方案。我不需要直接将值从构造函数设置为视图,而是从构造函数设置为下一个函数,并在这个函数中设置为视图($this->load->view($view',$data))。非常感谢!:)@user1257255您问:
“…这将在同一控制器的所有其他功能中可用,然后在视图中”
并接受与您所说不符的答案…尝试这个人,您将证明这一点。若你们把它放在构造器中,而不是在视图中,你们可以这样打印它。请在投票前试一试!这适用于视图,但不适用于控制器中的其他函数。@ErmanBelegu:来自问题:
“…这将在同一控制器的所有其他函数中可用,然后在视图中”
这是我问题的解决方案。我不需要直接将值从构造函数设置为视图,而是从构造函数设置为下一个函数,并在这个函数中设置为视图($this->load->view($view',$data))。非常感谢!:)@用户1257255您问:
“…这将在同一控制器的所有其他功能中可用,然后在视图中”
,并接受与您所说不符的答案。。。