如何使用Composer安装PHP CodeSniffer进行代码规范检查?(实例教程)

发布时间 - 2025-12-19 00:00:00    点击率:
推荐使用 Composer 在项目本地安装 PHP_CodeSniffer(PHPCS),执行 composer require --dev squizlabs/php_codesniffer,安装后通过 ./vendor/bin/phpcs 检查代码并支持 PSR12 等标准及自定义配置。

直接用 Composer 安装 PHP CodeSniffer(PHP_CodeSniffer,简称 PHPCS)是最主流、最灵活的方式。它支持全局安装(方便多项目复用)或项目本地安装(保证版本隔离),推荐优先使用本地安装。

一、确认已安装 Composer

在终端运行以下命令检查是否可用:

composer --version

若提示“command not found”,需先下载并安装 Composer(Windows 用户建议用 Composer-Setup.exe;macOS/Linux 可用 curl 命令安装)。

二、项目内本地安装(推荐)

进入你的 PHP 项目根目录(含 composer.json),执行:

composer require --dev squizlabs/php_codesniffer

该命令会:

  • 将 PHPCS 安装到 vendor/bin/phpcsvendor/bin/phpcbf
  • 自动写入 composer.jsonrequire-dev 区域
  • 确保团队成员执行 composer install 后获得一致版本

安装完成后,可直接运行:

./vendor/bin/phpcs --version(Linux/macOS)
vendor\bin\phpcs --version(Windows)

三、配置常用编码标准

PHPCS 自带多种规则集(Standard),例如:PSR12(现代 PHP 推荐)、PSR2SquizGeneric 等。

查看当前可用标准:

./vendor/bin/phpcs -i

检查某个文件是否符合 PSR12:

./vendor/bin/phpcs --standard=PSR12 src/MyClass.php

检查整个 src/ 目录,并显示详细错误信息:

./vendor/bin/phpcs --standard=PSR12 --report=full --report-width=120 src/

四、可选:添加自定义规则或第三方标准

例如安装 Laravel 官方风格指南:

composer require --dev laravel/pint(轻量级替代方案)

composer require --dev doctrine/coding-standard

安装后,可通过 --standard=Doctrine 调用。

如需自定义规则,可新建 phpcs.xmlphpcs.xml.dist 配置文件,示例:



  My project coding standard
  
  */tests/*

之后直接运行 ./vendor/bin/phpcs 即自动加载该配置。

五、小技巧:绑定为 Composer 脚本(更便捷)

composer.json"scripts" 区块中添加:

"scripts": {
  "cs:check": "phpcs --standard=PSR12 --report=full src/",
  "cs:fix": "phpcbf --standard=PSR12 src/"
}

然后执行:

composer cs:check(检查)
composer cs:fix(自动修复部分问题)


# php  # linux  # laravel  # js  # json  # composer  # windows  # 编码  # mac  # curl  # macos  # require  # xml 


相关栏目: 【 网站优化151355 】 【 网络推广146373 】 【 网络技术251813 】 【 AI营销90571


相关推荐: 如何在建站宝盒中设置产品搜索功能?  如何在阿里云部署织梦网站?  高性价比服务器租赁——企业级配置与24小时运维服务  ,在苏州找工作,上哪个网站比较好?  HTML透明颜色代码怎么让图片透明_给img元素加透明色的技巧【方法】  Laravel如何记录自定义日志?(Log频道配置)  如何快速搭建高效WAP手机网站吸引移动用户?  如何在云主机上快速搭建多站点网站?  简历没回改:利用AI润色让你的文字更专业  Laravel如何保护应用免受CSRF攻击?(原理和示例)  Linux网络带宽限制_tc配置实践解析【教程】  DeepSeek是免费使用的吗 DeepSeek收费模式与Pro版本功能详解  Laravel软删除怎么实现_Laravel Eloquent SoftDeletes功能使用教程  Laravel Eloquent性能优化技巧_Laravel N+1查询问题解决  如何快速启动建站代理加盟业务?  如何为不同团队 ID 动态生成多个独立按钮  网站建设保证美观性,需要考虑的几点问题!  如何获取免费开源的自助建站系统源码?  详解免费开源的DotNet二维码操作组件ThoughtWorks.QRCode(.NET组件介绍之四)  Laravel怎么定时执行任务_Laravel任务调度器Schedule配置与Cron设置【教程】  php8.4header发送头信息失败怎么办_php8.4header函数问题解决【解答】  php中::能调用final静态方法吗_final修饰静态方法调用规则【解答】  Laravel如何为API编写文档_Laravel API文档生成与维护方法  如何在宝塔面板中修改默认建站目录?  网站制作壁纸教程视频,电脑壁纸网站?  公司网站制作需要多少钱,找人做公司网站需要多少钱?  ChatGPT回答中断怎么办 引导AI继续输出完整内容的方法  C++用Dijkstra(迪杰斯特拉)算法求最短路径  如何正确选择百度移动适配建站域名?  如何在万网ECS上快速搭建专属网站?  如何用虚拟主机快速搭建网站?详细步骤解析  悟空识字如何进行跟读录音_悟空识字开启麦克风权限与录音  如何用腾讯建站主机快速创建免费网站?  iOS发送验证码倒计时应用  如何在阿里云完成域名注册与建站?  如何在不使用负向后查找的情况下匹配特定条件前的换行符  Laravel如何集成微信支付SDK_Laravel使用yansongda-pay实现扫码支付【实战】  手机网站制作平台,手机靓号代理商怎么制作属于自己的手机靓号网站?  Laravel如何实现本地化和多语言支持?(i18n教程)  ai格式如何转html_将AI设计稿转换为HTML页面流程【页面】  北京的网站制作公司有哪些,哪个视频网站最好?  Laravel如何自定义分页视图?(Pagination示例)  JS实现鼠标移上去显示图片或微信二维码  Laravel辅助函数有哪些_Laravel Helpers常用助手函数大全  Laravel Fortify是什么,和Jetstream有什么关系  制作公司内部网站有哪些,内网如何建网站?  Laravel怎么为数据库表字段添加索引以优化查询  Python函数文档自动校验_规范解析【教程】  如何在腾讯云服务器上快速搭建个人网站?  详解一款开源免费的.NET文档操作组件DocX(.NET组件介绍之一)