Codeigniter - Расширение моих собственных контроллеров

0

Я хотел бы знать, можно ли расширить мои собственные контроллеры. Я некоторое время работаю над веб-приложениями, и теперь я начинаю искать каждого клиента, который хочет использовать приложение, имеет разные требования к тому, как он должен работать. Мои мысли заключаются в том, что если я создаю базовую структуру, а затем расширяю контроллеры, чтобы переопределить любую из функций, которые клиенты требуют работать по-другому.

Прежде всего, не могли бы вы сказать мне, правильно ли я нахожусь на правильном пути, а во-вторых, как я могу расширить свои собственные контроллеры (если смогу)? Я пробовал обычный:

Class Reports2 extends Reports { }

Это не работает, но я предполагаю, что это имеет какое-то отношение к расположению файла, который я пытаюсь расширить. Моя файловая структура выглядит следующим образом:

Application
--->controllers
-------->control_panel
------------>reports.php
  • 1
    Это отличная / быстрая статья о расширении контроллеров. Это может помочь? philsturgeon.uk/blog/2010/02/...
  • 0
    @dragonslovetacos, это отличная статья. Я думал об этом, когда писал свой ответ
Теги:
class
codeigniter
extend

1 ответ

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(){

    }

}
  • 0
    Привет, спасибо, я пытался использовать __autoload в PHP5, который просто не хотел работать. Выше будет хорошо. Спасибо
  • 0
    @ user1530205 Пожалуйста. Я никогда не изучал автоматическую загрузку контроллеров на этом уровне, но я, безусловно, делал это при реализации отдельных базовых контроллеров, чтобы более эффективно управлять двумя отдельными приложениями.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню