我想扩展照亮'路由'路由,并以这种方式使用它:
request()->someCustomFunction();
有什么建议吗
你可以写你自己的类来扩展Illuminate'Routing'Route
和你的服务提供商中的n,你可以这样绑定它:
public function register()
{
$this->app->bind('Illuminate'Routing'Route', 'YourClassThanExtendsRoute');
}
这个解决方案是自Laravel 5以来的一个hack,因为扩展默认路由器变得更加困难。您只需要将以下内容添加到bootstrap
文件中。
$app->singleton('router', 'App'Services'Router::class);
您的新路由器存储在App/Services/Router.php
将看起来像:
namespace App'Services;
class Router extends 'Illuminate'Routing'Router
{
public function someCustomFunction() {
}
}
那么你将能够做:
Router::someCustomFunction();
这个解决方案在Laravel论坛讨论过