codeigniter 返回“消息:未定义的属性:Welcome::$load”试图加载帮助程序库
Posted
技术标签:
【中文标题】codeigniter 返回“消息:未定义的属性:Welcome::$load”试图加载帮助程序库【英文标题】:codeigniter returns "Message: Undefined property: Welcome::$load" trying to load helper lib 【发布时间】:2014-02-15 20:51:30 【问题描述】:背景信息
我刚刚安装了 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>
系统正在控制器的构造函数中死亡,我尝试加载库...
到目前为止我做了什么:
-
阅读手册。 https://www.codeigniter.com/user_guide/helpers/url_helper.html
尝试在 config/autoload.php 中包含 url 库,如下所示:
$autoload['helper'] = array('url');
但我仍然收到错误消息。 有什么建议?
谢谢。
截图:
【问题讨论】:
【参考方案1】:你忘记了一件重要的事情;
class 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
。如果你不这样做;当您在自己的控制器中覆盖 __construct 时,控制器不会继承它的抽象层。
只要您不覆盖您的 __construct
就可以了。它仅在您覆盖它时发生。您没有 load
功能,因为 Welcome 类是空的(无继承),即使它扩展了 CI_Controller
(但具有 __construct
覆盖)。
【讨论】:
这是有道理的......但不幸的是,这给了我另一个错误。请检查我帖子的编辑 1 部分。 哈哈,你从字面上复制了我的台词。我打错了。它应该是;
而不是 :
parent::__construct();
以上是关于codeigniter 返回“消息:未定义的属性:Welcome::$load”试图加载帮助程序库的主要内容,如果未能解决你的问题,请参考以下文章
CodeIgniter A PHP Error 遇到致命错误
在 laravel 4 中加载视图时未定义的 $load 属性