Шаблон проектирования для глобального экземпляра Smarty

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

final class Personal_Smarty
{
static private $instance;

private function __construct() {}

static public function instance()
{
if( !isset( self::$_instance ) )
{
$smarty = new Smarty();

self::$instance = $smarty;
};
return self::$instance;
}

}

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

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

0

Решение

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

По сути, ваше предположение о том, что создание умного экземпляра является проблемой производительности, просто неверно.

1

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]