PHPStorm IDE使用CodeSniffer进行代码规范化管理

PHP_CodeSniffer是一个优秀的代码风格检测工具,定义了一系列的代码规范(通常使用官方的代码规范标准,比如PHP的PSR2),能够检测出不符合代码规范的代码并发出警告或报错(可设置报错等级),常被用作团队开发时维护编码风格以及标准。

安装


  • mac安装:
brew install php-code-sniffer
//检测安装是否成功
phpcs --h
//安装完成后的路径
/usr/local/Cellar/php-code-sniffer

phpcs的配置


  1. 查看详细配置。使用命令:phpcs --config-show
  2. 设置默认的编码标准。(这个很重要,建议使用 PSR2 的标准)
# 查看配置
$ phpcs -i
The installed coding standards are MySource, PEAR, PHPCS, PSR1, PSR2, Squiz and Zend# 设置编码标准为 PSR2
$ phpcs --config-set default_standard PSR2
  1. 隐藏警告。(当然,对于强迫症来说,警告都是不允许的,非强迫症患者可以使用此配置项)
# 隐藏警告提醒
$ phpcs --config-set show_warnings 0
# 开启警告提醒
$ phpcs --config-set show_warnings 1
  1. 显示检查进程。(如果项目需要检查的文件较多可以开启这个)
# 显示检查进程
$ phpcs --config-set show_progress 1
# 关闭进程显示
$ phpcs --config-set show_progress 0
  1. 显示颜色
# 显示颜色
$ phpcs --config-set colors 1
# 关闭颜色显示
$ phpcs --config-set colors 0
  1. 修改错误和警告等级
# 显示所有的错误和警告
$ phpcs --config-set severity 1
# 显示所有的错误,部分警告 注意等级可有从 5-8 5 的警告显示会更多,8 的更少
$ phpcs --config-set severity 1 $ phpcs --config-set warning_severity 5 
  1. 设置默认编码
# 设置 utf-8
$ phpcs --config-set encoding utf-8
  1. 设置 tab 的宽度
# tab 为 4 个空格
$ phpcs --config-set tab_width 4
# 也可以对单独文件生效
$ phpcs --tab-width=0 /path/to/code
  1. 代码验证
# 校验单个文件
$ phpcs filename
# 校验目录 注意这个时候别因为 linux 学的太好加个 -R 哈。
$ phpcs /path/dir 

代码规范检测,命令行使用


$ phpcs /home/www/init.php
FILE: /home/www/init.phphttp://www.smy1.com
-------------------------------------------------------------
FOUND 2 ERROR(S) AFFECTING 2 LINE(S)
-------------------------------------------------------------1 | ERROR | Extra newline found after the open tag 13 | ERROR | Missing function doc comment ------------------------------------------------------------- 

设置PHPStorm整合CodeSniffer

  1. 配置 Code Sniffer

在 “Preferences”->“Languages & Frameworks”->“PHP”->“Quality Tools” ->“Code Sniffer” 配置中,“Configuration” 项后点击...并输入 phpcs 路径,可以使用 “Validate” 按钮验证phpcs路径是否正确。

  1. 开启验证

在 “Preferences”->“Editor”->“Inspections”->“Quality Tools”配置中,勾选上 “PHP Code Sniffer validation”。

具体参数中,
Show warnings as: Warnning,标示提示级别
Coding standard PSR2 代表执行的规范如果找不到这个选项,点一下紧挨着的刷新按钮。

转载于:https://www.cnblogs.com/xinshijue6080/p/10119664.html

PHP工具篇:PHPStorm IDE使用CodeSniffer代码规范化管理相关推荐

  1. php 代码规范 工具,PHP工具篇:PHPStorm IDE使用CodeSniffer代码规范化管理

    PHPStorm IDE使用CodeSniffer进行代码规范化管理 PHP_CodeSniffer是一个优秀的代码风格检测工具,定义了一系列的代码规范(通常使用官方的代码规范标准,比如PHP的PSR ...

  2. android 测试工具,Android开源项目第四篇:开发及测试工具篇

    本文为那些不错的Android开源项目第四篇--开发工具篇,**主要介绍Android开发工具和测试工具相关的开源项目**. Android开源项目系列汇总已完成,包括: 1.Buck faceboo ...

  3. 微信小程序购物商城系统开发系列-工具篇

    微信小程序购物商城系统开发系列-工具篇 微信小程序开放公测以来,一夜之间在各种技术社区中就火起来啦.对于它 估计大家都不陌生了,对于它未来的价值就不再赘述,简单一句话:可以把小程序简单理解为一个新的操 ...

  4. 机器学习从理论到工程的第二步-开发环境与工具篇(下)

    好啦~继续昨天的<第二步--开发环境与工具篇(上)>~ 其实有点尴尬啦,本来想一篇讲完的,结果小夕太啰嗦了,还没有开始讲正文,就写了快2000字了...所以说,这一篇是上一篇的正文... ...

  5. 轻量级程序编辑器的选择:EmEditor、Editplus等---Web开发系列之工具篇

    近一段时间将精力转向了Web开发领域,主要学习了PHP的开发技术,进一步熟悉和研究了JavaScript的应用.而在这一过程中, 陆续试用了不少的开发工具,今天稍作整理做个这方面的总结,也希望能给在工 ...

  6. 轻量级程序编辑器的选择:EmEditor、Editplus等---Web开发系列之工具篇(一)

    近一段时间将精力转向了Web开发领域,主要学习了PHP的开发技术,进一步熟悉和研究了JavaScript的应用.而在这一过程中, 陆续试用了不少的开发工具,今天稍作整理做个这方面的总结,也希望能给在工 ...

  7. web前端研发工具篇

    web前端研发工具篇 一.常见前端开发IDE 1.Visual Studio Code 2.hbuilder 3.sublime text3 4.WebStorm 5.Atom 6.Dreamweav ...

  8. MicroPython_ESP8266_IoT——(工具篇)Pycharm + Micropython

    MicroPython_ESP8266_IoT--(工具篇)Pycharm + Micropython 工欲善其事,必先利其器. 之前,使用官网推荐的REPL和Files Download工具,估计都 ...

  9. Android学习路线_工具篇(一)简单的编辑器

    工欲善其事,必先利其器.工具,是人类进化的一大助力,善于制造与使用工具,可以加快我们学习的速度.工具在人类的进化之路上随着人类共同进化,原始的人类需要的是原始的工具,先进的工具对于原始人来说也许是个占 ...

  10. 安装Ubuntu后必须要做的几件事(二)--开发工具篇

    链接 链接 安装Ubuntu后必须要做的几件事(一)–基础应用篇 安装Ubuntu后必须要做的几件事(二)–开发工具篇 终端的乐趣–Linux下有趣的终端命令或者工具 Ubuntu使用apt-file ...

最新文章

  1. 数据结构与算法(7-3)最小生成树(普里姆(Prim)算法和克鲁斯卡尔(Kruskal)算法)
  2. Django web : CSRF verification failed. Request aborted.
  3. linux初级学习笔记七:linux用户管理,密码和组命令详解!(视频序号:04_1)
  4. java date的使用_java:Date类的概述和方法使用
  5. 这些老外的名字你读对了吗?
  6. dpdk对虚拟化的支持调研
  7. button按钮样式_各种好看的小按钮合集,纯css编写,最近在学习时遇到的,记录成为笔记...
  8. rsync、scp “tab” 卡顿问题
  9. java并发编程(1)并发程序的取消于关闭
  10. vim 查找替换小结
  11. mysql存过游标_mysql存储过程 游标 循环使用介绍
  12. BUUCTF-MISC-黑客帝国~喵喵喵
  13. 英尺、英寸和厘米的换算
  14. 中国无线VOC检测器行业市场供需与战略研究报告
  15. 计算机的了解以及组装
  16. db2检查什么表被锁住了,如何解锁
  17. 1.13 golang中的Map
  18. 一分钟读懂广告投放各计费CPM、CPC等(公式推导干货)
  19. PL/SQL程序基础1
  20. python 05 字典

热门文章

  1. html教图片程,html教的程大全.pdf
  2. SQLAlchemy基本使用
  3. edger多组差异性分析_edgeR基因表达差异分析
  4. 安装java目录不存在_从GitHub安装R packge - “'''在当前工作目录中不存在
  5. php获取当前行,获取在PHP中执行当前函数的代码行和文件?
  6. 安装Firefly错误-Unable to find vcvarsall.bat
  7. Gmail priority inbox帮助你减少工作量
  8. 《演讲之禅》迷你书免费下载 每小时30000美元的秘诀
  9. 【DPDK峰会回顾】支撑双十一的高性能负载均衡是如何炼成的
  10. Power Shell08当你远程运行powershell指令(不需要管理员权限)