SuperAPI AI 工具集

laravel-constants-and-configuration

通用与其它

查看项目

更新于 10-16 02:31

技能介绍

用途:该技能面向 Laravel 项目,指导开发者避免在代码中散落硬编码的魔法数字与字符串,改用常量、枚举和配置文件,使代码更易维护、重构和调试。

主要能力:

  1. 类常量与 PHP 8.1+ 枚举:用 UserRole 类常量集中定义角色,用 OrderStatus 枚举定义订单状态,并附带 label()、color()、canTransitionTo() 等方法,配合模型 $casts 做枚举转换。
  2. 配置文件:在 config/app.php、config/payment.php 中集中定义缓存 TTL、分页、上传限制、税率、折扣层级、支付重试等,通过 config('app.cache_ttl.long') 读取。
  3. 数据库驱动配置:Setting 模型以 key/value 存储可动态修改的设置,并用缓存加速读取。
  4. 服务常量:CacheService 定义缓存键模式与标签,提供 getUserKey() 等辅助方法。
  5. 校验常量:ValidationRules 集中正则、长度限制,并返回规则数组。
  6. HTTP 状态与业务码:ApiResponse 定义标准 HTTP 码与自定义应用码,提供 success()/error() 响应方法。
  7. 队列优先级:JobPriority 定义优先级、最大重试次数与超时。
  8. 环境相关值:在 AppServiceProvider 中按环境调整配置,环境相关值应使用 env() 而非常量。

使用方式:按上述模式在 app/Constants、app/Enums、config 等目录组织代码,通过 config()、枚举实例、类常量引用取值;测试中可直接断言枚举状态转换、缓存键一致性与校验规则。

适用场景:Laravel 应用的状态机、权限角色、缓存键、校验规则、API 响应、队列任务等需要统一取值的场景。

限制:资料未提供安装命令、版本要求、收费信息或性能数据;示例基于 Laravel 与 PHP 8.1+ 枚举特性,具体项目需自行适配。