2017-07-08 61 views
0

我是OOP世界的新手,我試圖製作一個Laravel應用程序。Laravel PHP全局對象

我正在製作的應用程序是爲了便於遊戲。遊戲中有一個startdate和enddate。然而,在我的應用程序中,很高興知道遊戲的時間段(enddate - startdate)以及與一年(期間/ 365)相比的相對時期。我在配置文件中定義了開始日期和結束日期。

創建一個我設定時間段和相對時間段的類是明智的嗎?這個類只應該被實例化一次...所以一個單身人士?

歡迎任何指點/最佳實踐!

+0

您的遊戲是否打算在瀏覽器中只保留一個會話? – McRed

+0

我會把它放在會話中。 –

+0

@McRed否,在大約3周的時間內用戶不得不嘗試節約一些能源。所以每個註冊用戶的設置都是一樣的。 –

回答

0

你可以簡單地創建一個靜態類,所以它永遠不需要實例化。

如果你想創建一個單身,你可以檢查Laravel docs

$this->app->singleton('HelpSpot\API', function ($app) { 
    return new HelpSpot\API($app->make('HttpClient')); 
}); 

一旦你添加到了服務提供商的register方法(如AppServiceProvider),您可以按類型訪問它暗示它在控制器方法中或通過調用$api = resolve('HelpSpot\API');(請參閱the docs

+0

很好,做了一個有返回屬性的方法的類。在AppServiceProvider中我註冊了單例。偉大的作品:) –