Laravel:如何覆盖命名路由的路由帮助程序函数



我正在处理预先开发的Laravel-5.x项目,我需要从以下位置更改大量URL:

route('product.show', ['id'=> $product->id), 'title' => $product->title])

route('product.show', ['id'=> encode_id($product->id), 'title' => slug_title($product->title)])
如果我不想将所有"product.show"路由

替换到新版本,有没有办法覆盖"product.show"的路由帮助程序函数以生成新的URL?

函数

route()定义在vendorlaravelframeworksrcIlluminateFoundationhelpers.php

它是在没有任何命名空间的情况下定义的,因此可以在任何地方调用它。显然,您可以在项目中覆盖它,例如在AppServiceProviderRouteServiceProvider中。

但我建议你将自定义函数与一些命名空间一起使用,你应该在你需要的文件中指定这些命名空间。

最新更新