【问题标题】:Codeigniter - Extending my own controllersCodeigniter - 扩展我自己的控制器
【发布时间】:2015-01-12 20:51:46
【问题描述】:

我想知道是否可以扩展我自己的控制器。我从事基于 Web 的应用程序已经有一段时间了,现在我开始发现每个希望使用该应用程序的客户对它的工作方式有不同的要求。我的想法是,如果我生成一个基本结构,然后扩展控制器以覆盖客户需要以不同方式工作的任何功能。

首先,你能告诉我我是否走在正确的轨道上,其次,我该如何扩展我自己的控制器(如果可以的话)?我已经尝试了通常的方法:

Class Reports2 extends Reports { }

这不起作用,但我猜它与我要扩展的文件的位置有关。我的文件结构如下:

Application
--->controllers
-------->control_panel
------------>reports.php

【问题讨论】:

  • 这是一篇关于扩展控制器的好文章/快速文章。它可能有帮助吗? philsturgeon.uk/blog/2010/02/…
  • @dragonslovetacos 这是一篇很棒的文章。我在写答案时正在考虑它

标签: php codeigniter class extend


【解决方案1】:

如果我没记错的话,你应该可以轻松做到这一点:

reports2.php

<?php  if ( ! defined('BASEPATH')) exit('No direct script access allowed');

require_once(APPPATH.'controllers/control_panel/reports.php');

Class Reports2 extends Reports {

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

    public function index(){

    }

}

【讨论】:

  • 嗨,谢谢,我试图使用 PHP5 的 __autoload ,它只是不想工作。以上会很好。谢谢
  • @user1530205 不客气。我从来没有研究过这个级别的自动加载控制器,但我确实在实现单独的基本控制器时这样做了,以便更有效地控制两个单独的应用程序。
猜你喜欢
  • 1970-01-01
  • 2015-01-22
  • 2012-03-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-01-10
  • 2017-09-13
相关资源
最近更新 更多