2017-07-08 28 views
0

私はOOPの世界では新しく、私はLaravelアプリケーションを作ろうとしています。Laravel PHPグローバルオブジェクト

私が作っているアプリは、ゲームを容易にすることです。ゲームは開始日と終了日を持っています。しかし、私のアプリケーションを通して、ゲームの期間(enddate - startdate)と相対的な期間を1年(period/365)と比較することはうれしいことです。私は設定ファイルに開始日と終了日を定義しました。

期間と相対期間を設定するクラスを作成することは賢明ですか?クラスは一度だけインスタンス化されるべきです...だからシングルトン?

すべてのポインタ/ベストプラクティスを歓迎します!

+0

あなたのゲームはブラウザ内で1セッションだけ持続することを意図していますか? – McRed

+0

私はそれをセッションに入れます。 –

+0

@McRedいいえ、約3週間の期間、ユーザーは省エネルギーを試みる必要があります。したがって、登録されているすべてのユーザーの設定は同じです。 –

答えて

0

静的なクラスを作成するだけで、インスタンス化する必要はありません。

あなたがシングルトンを作成したい場合は、チェックすることができLaravel docs:あなたは、サービスプロバイダのregister方法にこれを追加したら

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

(例えばAppServiceProvider)あなたはそれをヒンティングのタイプによってそれにアクセスすることができます(the docsを参照)

+0

素晴らしい、プロパティを返すメソッドを持つクラスを作成しました。 AppServiceProviderで私はシングルトンを登録しました。よく働く :) –

関連する問題