Php 在AppServiceProvider中获取路由参数
我在应用程序中的每个路线中都设置了公司参数。我试图将该公司的变量发送到每个视图,以便于访问 在我的AppServiceProvider.php中,我尝试了两件事:Php 在AppServiceProvider中获取路由参数,php,laravel,Php,Laravel,我在应用程序中的每个路线中都设置了公司参数。我试图将该公司的变量发送到每个视图,以便于访问 在我的AppServiceProvider.php中,我尝试了两件事: $company = App::make('request')->route()->getParameter('company'); view()->share('company', $company); 而且: $company = Route::getCurrentRoute()->getParamete
$company = App::make('request')->route()->getParameter('company');
view()->share('company', $company);
而且:
$company = Route::getCurrentRoute()->getParameter('company');
view()->share('company', $company);
但对于这两个问题,我都有一个错误:
Call to a member function getParameter() on a non-object
如何获取参数变量
编辑:
我在boot()
函数中执行此操作
答复:
我所做的只是在AppServiceProvider中的register()函数中执行以下操作:
view()->composer('*', function ($view) {
// all views will have access to current route
$view->with('company', \Route::getCurrentRoute()->getParameter('company'));
});
当前路径在AppServiceProvider中尚未知,因为应用程序仍在此处引导。如果要访问管线参数,可以使用视图生成器-请参阅此处的更多详细信息 一个简单的例子:
class AppServiceProvider extends ServiceProvider {
public function register()
{
view()->composer('*', function ($view) {
// all views will have access to current rout
$view->with('current_route', \Route::getCurrentRoute());
});
}
}