PHP 检查是否符合程序码风格:CodeSniffer

前言

工作後才知道,有很多开源的工具能自动帮你检查 source code 是否写得符合各语言的程序码风格,像 PHP 就有 PSRs

今天会介绍一款目前自己在用的检查工具 CodeSniffer

CodeSniffer

安装

composer global require "squizlabs/php_codesniffer=*"

其他安装方式请见专案

使用

  • 纯检查
$ phpcs
  • 检查+修正
$ phpcbf

不指定路径会检查当下路径下(./)的所有档案,也可以指定路径:

$ phpcbf /path/to/directory/

也可以指定检查标准:

$ phpcs --standard=PSR12 /path/to/directory/

恩,使用上就是这麽简单!还不快检查一波!

标准 standard

可以选择不同标准来检查,安装後应该有 MySource, PEAR, PSR1, PSR12, PSR2, Squiz and Zend 等选择,预设为 PEAR

更改标准

举例,将标准改为 PSR12

# 指定用哪个标准检查
$ phpcs --standard=PSR12 /your/path

# 更改预设标准
$ phpcs --config-set default_standard PSR12

该选择哪个标准

我自己是参考这篇讨论串做设定的。

自己的简单整理:

  • 不同标准检查的项目数量不一样,有些少跑比较快,有些多当然也跑比较久
  • PEAR 是最基本预设的
  • 不太确定选啥可以先用 PSR2 看看
  • PSR12 是比 PSR2 早的,可以理解成PSR 1.2 doc
  • Squiz 又包含更多更多检查,像 JS and CSS

Reference


<<:  Subtotal函数经典用法,以一敌十!

>>:  AE卷轴制作5-Day6

请益 关於 excel vba 误差线

在excel-组合图表( 折线图+散布图) 设定 散布图中的 误差线 可设定成 水平误差线 请问 各...

【day18】聊天室(上) X Realtime database

好的,今天我们要来看的就是我们的精华啦-聊天室。 原本我们在设计邀约流程的时候是。 (原本设想的流程...

Day 10. 来学习如何切换场景!

碎碎念:虽然这部分VR的部分暂时消失了,但是这是因为我已经知道说,VR的部分是需要把接收输入的讯号改...

#番外-让你的CSS好读起来!CSS命名方法论笔记

你有以下困扰吗? 常常不知道要怎麽命名Class吗?(还一直去 Google 英文字的是你ㄇ ?) ...

[Day 27] - React 前端串後端 - Cookie存取

目前在浏览器储存使用者资料的主流方式有两种, 一种是存local storage、一种是存在Cook...