在每个Laravel请求上放置代码的位置?

时间:2015-08-04 23:40:37

标签: php laravel-5

我正在使用Laravel Framework构建PHP应用程序。我需要在每个请求上读取一些会话值,并在我的控制器方法中使用这些值。

我怎样才能做到这一点?在哪里放这个代码?

我想要类似Zend Framework Bootstrap类。

2 个答案:

答案 0 :(得分:1)

因此,您可以创建一个名为BaseController.php的文件,其扩展名为Controller。然后将您的逻辑放在__construct()

然后,所有其他控制器都可以扩展BaseController,并且在__construct()他们可以执行parent::__construct();来解决此问题。

答案 1 :(得分:0)

最佳实践是使用 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');
    }