Php 更改控制器加载位置,以及can';不要在控制器中使用任何函数
默认情况下,正如许多人可能知道的,codeigniter从Php 更改控制器加载位置,以及can';不要在控制器中使用任何函数,php,codeigniter,Php,Codeigniter,默认情况下,正如许多人可能知道的,codeigniter从应用程序/控制器(URI段0)加载控制器。好。。。我更改了它,以便它将它们加载到应用程序/模块/(URI段0)/控制器/(URI段1/未设置:URI段0)。到目前为止,一切正常,但当我创建一个控制器时,我不能使用任何默认函数作为$this->load或诸如此类。。。例如: /** * Home Controller Class */ class Home extends CI_Controller { function __con
应用程序/控制器(URI段0)
加载控制器。好。。。我更改了它,以便它将它们加载到应用程序/模块/(URI段0)/控制器/(URI段1/未设置:URI段0)。到目前为止,一切正常,但当我创建一个控制器时,我不能使用任何默认函数作为$this->load
或诸如此类。。。例如:
/**
* Home Controller Class
*/
class Home extends CI_Controller
{
function __construct()
{
$this->load->database();
}
public function index()
{
echo "Testing...";
}
}
此示例始终会导致错误:
严重性:通知
消息:未定义的属性:主页::$load
文件名:controllers/home.php
电话号码:10
我不知道你到底是怎么改变控制器的位置的 但是当您扩展
CI\u控制器
并使用构造函数方法时,首先需要执行父级的\u construct()
方法,如下所示:
class Home扩展CI_控制器
{
函数_u构造()
{
/*执行CI_控制器构造函数*/
父项::_构造();
$this->load->database();
}
}
这是因为您的本地构造函数将覆盖父类控制器类中的构造函数。所以你需要手动调用它
关于SO的类似主题: