我正在使用Laravel框架构建一个PHP应用程序。我需要在每个请求上读取一些会话值,并在我的控制器方法上使用这些值。
我怎样才能做到这一点?把代码放在哪里?
我想要一些类似于Zend Framework Bootstrap类的东西
最佳实践是使用Laravel请求生命周期(https://laravel.com/docs/8.x/lifecycle)
按照文档,放置&;onload &;的最佳位置或全局代码,在appServiceProvider的引导方法上。例如,如果我不想为我的所有项目设置一个特定的时区:
//app/Providers/AppServiceProvider.php
/**
* Bootstrap any application services.
*
* @return void
*/
public function boot()
{
date_default_timezone_set('America/Argentina/Jujuy');
}
因此,您可以创建一个名为BaseController.php
的文件,例如,它扩展了Controller
。然后把你的逻辑放到__construct()
然后,你所有的其他控制器可以扩展BaseController
和在他们的__construct()
他们可以执行parent::__construct();
使火。