php - codeigniter 返回 "Message: Undefined property: Welcome::$load"尝试加载帮助程序库

标签 php codeigniter url

enter image description here

背景信息

我刚刚安装了 CI 的新副本并修改了欢迎 Controller 以包含 url Helper,这样我就可以调用方法 base_url。然后我尝试从 home.php

调用这个方法

问题: 我收到以下错误消息:

Message: Undefined property: Welcome::$load
Filename: controllers/welcome.php

代码:

这是我的欢迎 Controller 现在的样子:

class Welcome extends CI_Controller {
    public function __construct()
    {
        $this->load->helper('url');     
    }   

    public function index()
    {
        $this->load->view('home');
    }
}

View 看起来像这样:

<!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>

在我尝试加载库的 Controller 构造函数中,系统快死了...

到目前为止我做了什么:

  1. 阅读手册。 https://www.codeigniter.com/user_guide/helpers/url_helper.html
  2. 尝试像这样在 config/autoload.php 中包含 url 库:

    $autoload['helper'] = array('url');

但我仍然收到错误。 有什么建议么?

谢谢。

截图:

最佳答案

你忘记了一件很重要的事情;

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。如果你不这样做;当您在自己的 Controller 中覆盖 __construct 时, Controller 将不会继承它的抽象层。

只要您不覆盖您的 __construct 就没问题。它仅在您覆盖它时发生。您没有 load 功能,因为 Welcome 类是空的(没有继承),即使它扩展了 CI_Controller(但带有 __construct 覆盖)。

关于php - codeigniter 返回 "Message: Undefined property: Welcome::$load"尝试加载帮助程序库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21339820/

相关文章:

php - 切换 JQuery slider - 默认值为 50%

php - Eloquent find(2) 返回错误记录

php - MYSQL 连接返回 Null 值

php - 当有数千个条目时如何加快数据库查询

java - java中的url编码?

php - 如何在php中选择mysql数据库?

php - CodeIgniter 创建 n 级深度导航

php - 通过codeigniter中的嵌套数组将多行插入数据库

javascript - 读取 URL 参数时代码未获取预期值

django - Django 中的 URL 路由