Laravel PHP全局对象

问题描述:

我是OOP世界的新手,我试图制作一个Laravel应用程序。Laravel PHP全局对象

我正在制作的应用程序是为了便于游戏。游戏中有一个startdate和enddate。然而,在我的应用程序中,很高兴知道游戏的时间段(enddate - startdate)以及与一年(期间/ 365)相比的相对时期。我在配置文件中定义了开始日期和结束日期。

创建一个我设定时间段和相对时间段的类是明智的吗?这个类只应该被实例化一次...所以一个单身人士?

欢迎任何指点/最佳实践!

+0

您的游戏是否打算在浏览器中只保留一个会话? – McRed

+0

我会把它放在会话中。 –

+0

@McRed否,在大约3周的时间内用户不得不尝试节约一些能源。所以每个注册用户的设置都是一样的。 –

你可以简单地创建一个静态类,所以它永远不需要实例化。

如果你想创建一个单身,你可以检查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中我注册了单例。伟大的作品:) –