首页IT科技laravel怎么念(laravel9-原生注解路由插件-laravel-route-notes)

laravel怎么念(laravel9-原生注解路由插件-laravel-route-notes)

时间2025-06-20 04:39:37分类IT科技浏览5059
导读:laravel-route-notes...

laravel-route-notes

laravel框架扩展              ,原生注解生成路由

优点是直接生成路由文件                    ,不在运行中解析路由      ,提升效率

使用环境

[PHP] >= 8.0

[Laravel] >= 9.0

如何安装

直接使用composer进行安装:

命令使用

php artisan notes:route [-p dirname] [-f filename]

-p 要生成的控制器目录名称,默认为`app/Http/Controllers/`

-f 生成的路由文件地址,默认为`route/date("Y-m-d-His").php`

如果不指定控制器目录              ,默认会扫描app/Http/Controllers/下的所有控制器文件进行生成

注解使用

首先要先在控制器类中标记开启注释功能,这样运行命令才会生成路由

<?php namespace App\Http\Controllers; use App\Http\Controllers\Controller; use App\Models\User; #[annotate(true)] class UserController extends Controller { #[get(/show)] public function show() { return view(welcome); } }

上面是一个常规的控制器,必须在声明类的上面加上#[annotate(true)],这样才会生成注解             。

可以在类的注解上声明全局的属性,比如:

#[annotate(true),prefix(/user)]

这样下面方法注解就会自动带上前缀,当然你也可以在方法上改变这个前缀                    。

注解方法的属性跟路由使用基本上一样       。

比如:

#[get(show),prefix(/user),middleware(myauth)]

上面声明的注解最终会生成以下的路由:

#Route::prefix("/user")->post("all",[userController::class,"show"])->middleware("myauth");

除此之外                     ,也支持where正则验证:

#[get(show/{name}),where([name=>[a-z]+])]

又或者这样:

#[get(show/{name}),where(name,[a-z]+)]

另外你可以在类注解上面声明全局的where属性:

#[annotate(true),prefix(/user),where([name=>[a-z]+])]

重定向路由注解案例:

#[annotate(true)] class MyController extends Controller { #[get(/index)] public function index(Request $request){ return view(welcome); } #[redirect(/,/index)] public function home(){ } }

关于类注解和方法注解的属性名称如以下所示:

类注解的都是会自动注册到方法注解里面      ,也可以在方法注解里面覆盖       。

更多说明       ,请阅读composer包里的说明文档                     ,赶快来试一试吧!

声明:本站所有文章             ,如无特殊说明或标注       ,均为本站原创发布                    。任何个人或组织                     ,在未征得本站同意时             ,禁止复制             、盗用                    、采集       、发布本站内容到任何网站       、书籍等各类媒体平台              。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理       。

创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!

展开全文READ MORE
shell脚本echo输出格式(Shell脚本攻略:echo $命令的作用) 网站排名基础知识全面解析(优化策略、技巧、方法和贴士)