Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/codeigniter/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
从MY_控制器CodeIgniter访问变量_Codeigniter_Variables - Fatal编程技术网

从MY_控制器CodeIgniter访问变量

从MY_控制器CodeIgniter访问变量,codeigniter,variables,Codeigniter,Variables,正如我通读的文章所述,在我的应用程序的所有控制器中验证用户的最佳方法是扩展我自己的控制器,该控制器扩展CI_控制器 但我不能让它工作 我拥有的是一个扩展我的myu控制器的members\u控制器 在MY_Controller中,我有这段代码,只是为了测试我如何利用它 <?php class MY_Controller extends CI_Controller { private $foo; function __construct() { parent::_

正如我通读的文章所述,在我的应用程序的所有控制器中验证用户的最佳方法是扩展我自己的控制器,该控制器扩展CI_控制器

但我不能让它工作

我拥有的是一个扩展我的
myu控制器的
members\u控制器

MY_Controller
中,我有这段代码,只是为了测试我如何利用它

<?php

class MY_Controller extends CI_Controller {

private $foo;

    function __construct() {
        parent::__construct();
        $this->foo = 'hello world again';
    }

}
在我的
成员视图中

我想访问我刚刚设置的这个变量,但我不知道如何访问

我试着像这样回声$foo
,像这样
$this->foo


但两者都不起作用。多谢

您是否尝试将变量传递到“成员视图”中

$this->load->view('members',$foo);

您是否尝试将变量传递到“成员视图”中

$this->load->view('members',$foo);

您需要将变量传递到视图文件

    <?php
    class Members extends MY_Controller {
        function index() {
             $data = array('foo' => $this->foo)
             $this->load->view('members', $data);
        }
    }

您需要将变量传递到视图文件

    <?php
    class Members extends MY_Controller {
        function index() {
             $data = array('foo' => $this->foo)
             $this->load->view('members', $data);
        }
    }

您需要将
$foo
设置为受保护而非私有。 然后,您可以在扩展MY_controller.php的控制器中访问它,如下所示:
$this->foo
您需要将
$foo
设置为受保护而非私有。 然后,您可以在扩展MY_controller.php的控制器中访问它,如下所示:
$this->foo
今天我第一次使用codeigniter 3。在过去,我多次使用2.x版。现在我无法扩展
CI\U控制器

application/core/MY_Controller.php

class MY_Controller extends CI_Controller {

private $data = array();

function __construct() {
    parent::__construct();
    date_default_timezone_set("Europe/Zagreb");
    $this->data['foo'] = "bar";
}
class Welcome extends MY_Controller {

public function index() {
    $this->data['main_content'] = 'home';
    $this->load->view('template/template', $this->data); 
}
应用程序/控制器/Welcome.php

class MY_Controller extends CI_Controller {

private $data = array();

function __construct() {
    parent::__construct();
    date_default_timezone_set("Europe/Zagreb");
    $this->data['foo'] = "bar";
}
class Welcome extends MY_Controller {

public function index() {
    $this->data['main_content'] = 'home';
    $this->load->view('template/template', $this->data); 
}
application/view/home.php (这是由
$this->data['main\u content']
加载的视图)

如果我尝试回显
我的\u控制器
中声明的任何数据,我会得到一个错误

    <?php echo $foo; ?>

A PHP ERROR WAS ENCOUNTERED

Severity: Notice

Message: Undefined variable: foo

Filename: template/header.php

遇到一个PHP错误
严重性:通知
消息:未定义变量:foo
文件名:template/header.php

今天我第一次使用codeigniter 3。在过去,我多次使用2.x版。现在我无法扩展
CI\U控制器

application/core/MY_Controller.php

class MY_Controller extends CI_Controller {

private $data = array();

function __construct() {
    parent::__construct();
    date_default_timezone_set("Europe/Zagreb");
    $this->data['foo'] = "bar";
}
class Welcome extends MY_Controller {

public function index() {
    $this->data['main_content'] = 'home';
    $this->load->view('template/template', $this->data); 
}
应用程序/控制器/Welcome.php

class MY_Controller extends CI_Controller {

private $data = array();

function __construct() {
    parent::__construct();
    date_default_timezone_set("Europe/Zagreb");
    $this->data['foo'] = "bar";
}
class Welcome extends MY_Controller {

public function index() {
    $this->data['main_content'] = 'home';
    $this->load->view('template/template', $this->data); 
}
application/view/home.php (这是由
$this->data['main\u content']
加载的视图)

如果我尝试回显
我的\u控制器
中声明的任何数据,我会得到一个错误

    <?php echo $foo; ?>

A PHP ERROR WAS ENCOUNTERED

Severity: Notice

Message: Undefined variable: foo

Filename: template/header.php

遇到一个PHP错误
严重性:通知
消息:未定义变量:foo
文件名:template/header.php

谢谢。。但是如果它是一个私有变量,我就做不到。。呵呵。。无论如何,非常感谢你!!谢谢但是如果它是一个私有变量,我就做不到。。呵呵。。无论如何,非常感谢你!!