Загрузка модулей. ООП.

Astral Man

We Will Rock You
Загрузка модулей. ООП.

Всем привет!

Загрузка модулей должна производиться в каждом файле где требуется какой либо модуль.
Например:
/doc/text/index.php
PHP:
<?
require_once($_SERVER['DOCUMENT_ROOT'].'/core/core.php');
$app->module('name', 'param');
?>
в этом файле загружается ядро в котором определяется класс $app, далее вызывается метод загрузки модуля.
Вот здесь и начинаются проблемки...

по идее метод module должен подключить файл модуля...
вот так это правильно:
PHP:
function module($name, $param = NULL) {
/// проверяем в БД, доступ, наличие файла и т.д.
/// потом подключаем...
return require_once($_SERVER['DOCUMENT_ROOT'].'/modules/'.$name.'/index.php');
}
или это бред?
впринципе это пол беды, для кажого модуля устанавливается свой шаблон (главный), а он использует шаблон модуля в нем вся логика представления.
пример:
/tpl/main.tpl.php - главный основной шаблон
PHP:
<table border="1">
    <tr>
        <td>1 1 1 1 1</td>
        <td>2 2 2 2 2</td>
    </tr>
    <tr>
        <td colspan="2"><br><?$app->module_tpl()?></td>
    </tr>
</table>
/module/name/tpl/main.tpl.php - главный шаблон модуля
PHP:
<table>
    <tr>
        <td>Шаблон модуля <?=$name_mod?></td>
    </tr>
</table>
т.е. заргужая модуль мы получаем информацию о шаблонах, сначала нужно подлючить главный модуль, а он подключает шаблон модуля.

Как это сделать с помощью ООП?
 

demongloom

Новичок
Re: Загрузка модулей. ООП.

Если используешь php5 то можно использовать метод __autoload, что лучше чем некий module_load, т.к. случайно тот или иной модуль можно забыть загрузить или неправильно написать, а также меньше проблем с зависимостями если сложная модульная структура.
 

Astral Man

We Will Rock You
demongloom
Посмотрю в его сторону... а то совсем запутался. Спасибо.
 
Сверху