0
我正在尋找一種類模式,它可以幫助我獲取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腳本創建smarty實例可能是繁重的(開銷),但也許這只是我的想法。
你是什麼意思的每個腳本?你是否試圖讓這個實例通過多個請求? – andy 2014-09-24 15:31:10
你在找什麼叫Singleton。但使用它們是一個非常糟糕的主意,所以不要這樣做。 – GordonM 2014-09-24 15:31:20
@GordonM爲什麼單身人士會是一個非常糟糕的主意? – andy 2014-09-24 15:32:39