背景资料
我刚刚安装了CI的新副本并修改了欢迎控制器以包含url Helper,因此我可以调用方法base_url.然后我尝试从home.PHP调用此方法
问题:
我收到以下错误消息:
Message: Undefined property: Welcome::$load Filename: controllers/welcome.PHP
码:
这是我的欢迎控制器现在的样子:
class Welcome extends CI_Controller { public function __construct() { $this->load->helper('url'); } public function index() { $this->load->view('home'); } }
该视图如下所示:
<!DOCTYPE html> <html lang="en"> <head> <Meta http-equiv="X-UA-Compatible" content="IE=Edge"/> <Meta charset="utf-8"> <Meta name="viewport" content="width = device-width"> <Meta name="description" content=""> <!-- Le styles --> <title>test site</title> <script> var BASEPATH = "<?PHP echo base_url(); ?>"; </script> <link href="<?PHP echo base_url('assets/css/bootstrap.min.css')?>" rel="stylesheet"> <link href="<?PHP echo base_url('assets/css/navbar.css')?>" rel="stylesheet"> </head>
系统在控制器构造函数中的行上死亡,我尝试加载库…
到目前为止我做了什么:
>阅读手册. http://ellislab.com/codeigniter/user-guide/helpers/url_helper.html
>尝试在config / autoload.PHP中包含url库,如下所示:
$autoload [‘helper’] = array(‘url’);
但我仍然得到错误.
有什么建议?
谢谢.
截图:
你忘记了一件至关重要的事
原文链接:https://www.f2er.com/php/136263.htmlclass Welcome extends CI_Controller { public function __construct() { parent::__construct(); $this->load->helper('url'); //Loading url helper } public function index() { $this->load->view('home'); //Loading home view } }
parent :: __构造.如果你不这样做;当您覆盖自己控制器中的__construct时,Controller不会继承它的抽象层.
只要你不覆盖你的__construct就可以了.它只会在您覆盖它时发生.您没有加载功能,因为Welcome类为空(无继承),即使它扩展了CI_Controller(但具有__construct覆盖).