SuperAPI AI 工具集

php-standards

编程与开发

查看项目

更新于 10-26 16:21

技能介绍

用途 php-standards 用于在设置 PHP 包自动加载、编码风格或 PSR 接口时提供规范依据,适合新建或现代化改造 Composer 包时参考。

主要能力

  • 自动加载:推荐 PSR-4,PSR-0 与 target-dir 已废弃。包含命名空间到路径映射说明。
  • 编码风格:以 PER Coding Style 3.1 为当前风格规范,实践中取代 PSR-12 且要求符合 PSR-1;但需注意 PSR-12 仍是官方 Accepted 的 PSR,不应声称其被撤销。
  • 标准对照表:覆盖日志(PSR-3 LoggerInterface)、缓存(PSR-6/PSR-16)、HTTP(PSR-7/15/17/18)、依赖注入容器(PSR-11)、事件(PSR-14)、时间(PSR-20 ClockInterface)等。
  • 模板:提供 composer.json 与项目结构模板,src/ 存放库代码,tests/ 通过 autoload-dev 挂载,bin/ 存放 CLI 入口。
  • 核心文件规则:4 空格缩进、LF 行尾、省略结束标签 ?>。

使用方式 该技能包含强制性的代理工作流说明:在应用标准前并行启动 3 个代理,分别用于探测现有风格配置(.php-cs-fixer.php、phpcs.xml)与 composer.json autoload、在 php-fig.org 核实 PSR 当前状态、交叉核对 composer.json schema;修改后运行校验。

最佳实践 应使用 PSR-4 将 src/ 映射到厂商命名空间;遵循 PER Coding Style 3.1(可用 php-cs-fixer 的 @PER-CS 规则集,但当前该规则集执行的是 3.0 规则,3.1 增补需人工审查应用);类型提示使用 PSR 接口包;仅测试类放 autoload-dev。 不要使用 PSR-0 或 target-dir;不要依赖已废弃的 PSR-2/PSR-0 或已放弃的 PSR-8/9/10;不要在存在 PSR 接口时硬编码具体日志器或缓存实现。

适用场景 PHP 包的自动加载配置、编码风格统一、PSR 接口选型与依赖规范化。

限制 不适用于 PHP 语言语法或特性问题(应使用 php-language-modern),也不适用于 Laravel 专有约定(位于 Laravel 插件)。资料未提供具体收费、平台支持或性能效果等信息。