[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: подключение модулей (ф-ция include?)
alc99vol
Доброго дня!

Задался целью написать небольшую cms (в целях обучения), но не могу сообразить как лучше реализовать подключение модулей. В идеале хочется получить следующее:

$PM=new PMngr; //PMngr - менеджер страниц, инициализация
/* некий код*/
PM.inc_mod('mod_name');

В этом месте хочется чтобы метод inc_mod нашел в БД по имени mod_name нужный файл (/somepath/mod_name_file.php) и файл этот подключил. Т.е. получилось бы что-то аналогичное вызову include:

include '/somepath/mod_name_file.php';

Вызывать include внутри метода PM.inc_mod не прокатит, а конструкция вроде такой:
$path=PM.find_inc_path('mod_name); //вместо PM.inc_mod('mod_name');
include("$path");
хотя и сработает, но выглядит кривовато.

Напишите, пожалуйста, если знаете способ как сделать все правильно и красиво.









Спустя 1 час, 13 минут, 28 секунд (9.05.2011 - 17:28) inpost написал(а):
irbis-team.com

Спустя 8 минут, 49 секунд (9.05.2011 - 17:37) alc99vol написал(а):
напишите, пожалуйста, подробнее что и где там искать, если ссылка вообще имеет отношение к моему вопросу

Спустя 23 минуты, 41 секунда (9.05.2011 - 18:01) Игорь_Vasinsky написал(а):
паттерн MVC - всё давно уже придумано и подробно там расписано

Спустя 16 минут, 33 секунды (9.05.2011 - 18:17) alc99vol написал(а):
был бы очень благодарен за более конкретный ответ (с кодом и примером) на свой вполне конкретный вопрос. еще раз, вопрос скорее касается функции include и областей видимости, чем паттернов итд.

Спустя 25 минут, 27 секунд (9.05.2011 - 18:43) inpost написал(а):
alc99vol
Когда открываешь учебник прочитать, что такое регулярные выражения, ты тоже ему говоришь: "дай мне ответ и всё, не хочу учиться!"? Там целый курс посвящен ядру и MVC, пройдешь его, поймешь основы.

Спустя 14 минут, 17 секунд (9.05.2011 - 18:57) Игорь_Vasinsky написал(а):
alc99vol
inpost имел ввыду - что совершенно не зачем изобретать велосипед - когда есть продуманный алгоритм, тем более что популярность его растёт, а значит и дальнейшие с ним проблемы и вопросы можно будет решать оператвно.
А на вшем примере, честно, даж вникать - чё вы как на придумывали от не охото.

Спустя 1 минута, 31 секунда (9.05.2011 - 18:59) inpost написал(а):
Игорь_Vasinsky
Ты не прав, на Ирбисе сказано, что если Вы можете придумать круче, не вопрос, цель курса - наиучить людей понимать структуру MVC на практике и ею пользоваться.

Спустя 8 минут, 42 секунды (9.05.2011 - 19:07) Игорь_Vasinsky написал(а):
inpost
1. Я вообще е вижу преимуществ в предложении ТС
2. Я не навязывал MVC, я указал что есть уже удобный.

Выбор за ТС.

Спустя 1 день, 14 часов, 32 минуты, 43 секунды (11.05.2011 - 09:40) alc99vol написал(а):
вопрос был не в том, какой выбрать паттерн итд, вопрос про функцию include.

отвечу сам:
пока я пришел к такому выводу, могу ошибаться, но выглядит все так:

код:
PM.inc_mod('mod_name');
и код:
$path=PM.find_inc_path('mod_name); //вместо PM.inc_mod('mod_name');
include("$path");

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

p.s.
все равно всем спасибо за ответы. реализовать систему я, кстати, хочу на основе компонентого подхода, а не mvc,и не стоит обсуждать паттерны или достоинства того или иного подхода в теме, созданной не для этого.
p.p.s
если с include'ом не так - поправьте, ушел в ветку по ООП, там интересно)
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.