X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

Открыть тему
Тема закрыта
> require
unnormal
unnormal
Topic Starter сообщение 28.7.2010, 15:17; Ответить: unnormal
Сообщение #1


В общем:

В шаблоне должен подключатся файл, в зависимости от $_GET["mod"].

[PHP]<div id="content">
<? $app->content(); ?>
</div>[/PHP]

Но подключение модуля и его шаблона происходит уже внутри функции и не может использовать ранее созданные объекты, как решить эту проблему?

Пока приходится делать так [PHP]require(DIR."/php/mod/".strip_tags($_GET["mod"]).".php");[/PHP]
Но писать логику в шаблоне вообще не хочется.
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Letmetouchyou
Letmetouchyou
сообщение 28.7.2010, 15:21; Ответить: Letmetouchyou
Сообщение #2


unnormal, вопрос не очень ясен.
мб через static function?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
unnormal
unnormal
Topic Starter сообщение 28.7.2010, 16:06; Ответить: unnormal
Сообщение #3


[php]
class Application
{
function content()
{
$patch = DIR."/php/mod/".strip_tags($_GET["mod"]).".php";

if (file_exists($patch))
require($patch);
else
return false;
}
}
$app = new Application();
$user = new User();
[/php]Если я буду грузить модуль через эту функцию, уже созданные объекты будут недоступны (тот же $user), а если прямо в коде инклюдить то всёок.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Letmetouchyou
Letmetouchyou
сообщение 28.7.2010, 16:26; Ответить: Letmetouchyou
Сообщение #4


unnormal, в классе досутпны только объекты, которые созданы внутри этого класса или унаследованы, также доступ к статическим методам других классов.

отталкивайтесь от этого
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
unnormal
unnormal
Topic Starter сообщение 28.7.2010, 16:55; Ответить: unnormal
Сообщение #5


Вроде как решилась проблема.
[php]extract($GLOBALS, EXTR_REFS);[/php]
Тут только возникает вопрос в производительности - оно дублирует глобальные перененны или просто делает их видимыми?

Замечание модератора:
Эта тема была закрыта автоматически ввиду отсутствия активности в ней на протяжении 100+ дней.
Если Вы считаете ее актуальной и хотите оставить сообщение, то воспользуйтесь кнопкой
или обратитесь к любому из модераторов.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


 



RSS Текстовая версия Сейчас: 19.4.2024, 21:00
Дизайн