iT邦幫忙

2021 iThome 鐵人賽

DAY 7
0
Modern Web

工作後才知道的後端 30 件小事系列 第 7

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


上一篇
如何用 PHP 檢查字串是否為合法的日期?
下一篇
一些類似判斷是否為空的方法比較:isset, empty, is_null
系列文
工作後才知道的後端 30 件小事20

尚未有邦友留言

立即登入留言