開發中的程式碼規範實踐 PHP

TianYou發表於2018-08-28

前言:良好的程式碼規範可以提高程式碼可讀性,減少團隊溝通維護成本,所以本文嘗試PSR-2程式碼規範進行程式碼格式化。

正文:

(1)使用環境:

IDE:phpstorm2017.3.6

外掛:phpcs和php-cs-fixer

(2)安裝phpcs

composer global require 'squizlabs/php_codesniffer=*'
複製程式碼

(3)安裝php-cs-fixer

composer require friendsofphp/php-cs-fixer
複製程式碼

注意:如果按照網上舊的教程,上面的命令會變成

composer global require fabpot/php-cs-fixer
複製程式碼

fabpot/php-cs-fixer 這個包在Packagist上已經被Abandon了,可以使用,但是在使用過程中會報Warning,並且提示讓你使用friendsofphp/php-cs-fixer,所以看到這篇文章的同志們可以直接安裝friendsofphp/php-cs-fixer

如果已經安裝了fabpot/php-cs-fixer,有強迫症想改成friendsofphp/php-cs-fixer,可以使用如下命令去掉composer依賴

composer remove fabpot/php-cs-fixer
複製程式碼

(4)設定PHPStorm--phpcs

PhpStorm設定

● 步驟1:開啟PhpStorm點選 File->Settings

開發中的程式碼規範實踐 PHP開發中的程式碼規範實踐 PHP



● 步驟2:接著點選Languages & Frameworks->PHP->Code Sniffer點選Configuration右側的按鈕,


● 步驟3:選擇PHP Code Sniffer (phpcs) path:的路徑,就是剛才composer之後生成的那個phpcs.bat的路徑。

● 步驟4:選擇之後點選Validate驗證成功

● 步驟5:節點點選Editor->Inspections展開點選右側的PHP

● 步驟6:勾選PHP Code Sniffer Validation 選擇右側的PSR2

● 步驟7:點選驗證成功 大功告成!!

效果:

開發中的程式碼規範實踐 PHP

(5)設定PHPStorm--php-cs-fixer

開發中的程式碼規範實踐 PHP

開發中的程式碼規範實踐 PHP

name和description可自行填寫

program需要填寫php-cs-fixer的可執行檔案地址,Windows上是使用者目錄\Roaming\Composer\composer\vendor\bin\php-cs-fixer.bat,linux和mac上是~/.composer/vendor/bin/php-cs-fixer

Arguments/parameters填--rules=@Symfony --verbose fix "$FileDir$/$FileName$",其中rules欄位具體可以檢視 php-cs-fixer 的官方文件,但是由於 Windows 的 cmd 有諸多限制,所以只能傳入一些簡單的規則,如果需要配置複雜規則建議使用配置檔案來完成。
複製程式碼
working directory填$ProjectFileDir$
複製程式碼

選擇確定,使配置生效然後才能新增快捷鍵

外掛配置好以後,到Keymap中設定一個快捷鍵,就可以使用了

開發中的程式碼規範實踐 PHP

使用效果如下圖

開發中的程式碼規範實踐 PHP

至此,PHPStorm中成功使用phpcs和php-cs-fixer進行程式碼格式化PSR-2



參考文件 :
PHPStorm中使用phpcs和php-cs-fixer進行程式碼格式化PSR-2


相關文章