未找到Codeigniter 2.2项目中的父控制器

时间:2014-08-11 12:50:37

标签: php codeigniter

在我的CI 2.2项目中,我想让我的父控件使用应用程序的常用功能,以便在所有应用程序中使用,为此我创建文件: application / libraries / N_Controller.php:

<?php

class N_Controller extends Controller
{
    public function __construct()
    {
        parent::__construct();
    }

但首次尝试在文件中使用它 应用/控制器/管理/ admin.php的

<?php
class Admin extends N_Controller
{

    public function __construct()
    {
        parent::__construct();

我收到了错误:

PHP Fatal error:  Class 'N_Controller' not found in /controllers/admin/admin.php on line 3, referer: http://local-ci22.com/admin/hostel/edit/15

我尝试在application / config / autoload.php文件中添加:

$autoload['libraries'] = array( 'AppSmarty', 'AppUtils', 'N_Controller');

但它没有帮助。哪种方法正确?

1 个答案:

答案 0 :(得分:0)

如果要扩展系统类的功能。你需要遵循这些建议。

  1. 将您的扩展类放在/application/core中,请确保将其命名与创建的类的名称和大小写完全相同。
  2. 根据您的需要,您的课程应该从CI_ModelCI_Controller延伸。
  3. 无论您在何处实施新课程,请务必使用扩展课程中的同名套管。
  4. 您应该在$config['subclass_prefix']上配置/application/config/config.php。让我们在您的情况下说出值'N_'
  5. 我可以从您的代码中看到,您不是从CI_Controller延伸而且您的路径似乎是错误的。

    信息性说明/application/library用于放置不符合CI模式的第三方的类和库。