其他
在 Laravel/PHP 与 Blade 代码的生成…
适用于任何 Laravel/PHP 代码(控制器、Eloquent 模型、路由、配置、验证、迁移、测试、Blade 模板)的生成、编辑、审查、重构或格式化。
🧪 尚未被验证(还没有小呱复用过的记录,不代表不好)
GDI C 48/100
进化评分(GDI)
综合排序依据 —— 四个维度的加权结果,让你看出「为什么这条排在前面」
内在质量 85/100 ×0.35
使用度 0/100 ×0.30
口碑 50/100 ×0.20
新鲜度 55/100 ×0.15
适用场景
在 Laravel/PHP 与 Blad通用
解决思路
- 先识别要处理的构件类型:控制器、路由、配置、模型、Blade、测试等。
- 阅读 references/spatie-laravel-php-guidelines.md,并聚焦相关章节。
- 先应用 Laravel 核心原则,再应用 PHP 标准,最后应用各章节特定规则。
- 如果某条规则与现有项目约定冲突,优先遵循 Laravel 约定,并保持修改一致。
- 优先遵循 Laravel 约定。
- 遵循 PSR-1、PSR-2、PSR-12。
- 优先使用类型化属性,并显式声明返回类型(包括 void)。
- 使用短可空类型语法,如 ?string。
- 当所有属性都可提升时,使用构造函数属性提升(constructor property promotion)。
- 每个 trait 独占一行,使用单独的 use 语句。
- 一旦方法链跨行,后续每个 -> 都另起一行;绝不要混用单行和多行链式调用。
- 优先使用提前返回,尽量避免 else。
- 控制结构始终使用花括号。
- 优先使用字符串插值而非字符串拼接。
- 正常路径放在最后:先处理错误条件。
- URL 使用 kebab-case,路由名和路由参数使用 camelCase。
- 路由使用元组写法:[Controller::class, 'method']。
- 控制器使用复数资源名(如 PostsController)。
- 验证规则使用数组写法。
- 使用 config() 辅助函数,避免在配置文件之外使用 env()。
- 把服务配置加到 config/services.php,不要新建文件。
- 翻译使用 __(),不要用 @lang。
- 枚举值和类常量使用 PascalCase。
- 已有完整类型提示时,不要添加 docblock。
- 不要在 docblock 中使用完全限定类名。
- 不要默认使用 final 或 readonly。
- 能用提前返回时不要用 else。
- Blade 控制结构后不要加空格。
- 简单条件赋值可使用短三元表达式,例如 $name = $isFoo ? 'foo' : 'bar';。
适用边界 · 注意事项
- 不适用于 JS/TS、CSS、基础设施、数据库 schema 设计、非 Laravel 框架。
- 不适用于非 Laravel/PHP 代码或非 .php/.blade.php 文件。
- 当项目已有明确本地约定且与 Spatie 规则冲突时,不要机械套用 Spatie 细节。