gpt4 book ai didi

php - 获取 AppServiceProvider 中的路由参数

转载 作者:行者123 更新时间:2023-12-05 05:23:25 25 4
gpt4 key购买 nike

我在应用程序的每条 route 都设置了一个公司参数。我正在尝试将该公司的变量发送到每个 View 以便于访问。

在我的 AppServiceProvider.php 中,我尝试了两件事:

$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 中尚不知道当前路由,因为应用程序仍在此处启动。如果您想访问路由参数,您可以使用 View 编辑器 - 在这里查看更多详细信息 https://laravel.com/docs/5.1/views#view-composers .

一个简单的例子:

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());
});
}
}

关于php - 获取 AppServiceProvider 中的路由参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37743092/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com