如何检查php代码规范,用CodeSniffer检查PHP项目的代码规范
PHP_CodeSniffer是一套用來檢查代碼規范的工具,是PEAR的一個包,可以通過PEAR直接安裝:
pear install PHP_CodeSniffer
詳細的官方文檔參見這里:http://pear.php.net/manual/en/package.php.php-codesniffer.php
安裝完成后,多了一個phpcs命令,用法:
phpcs
常用的參數有:
–standard:定義代碼規范,常用的有PEAR、Squiz、Zend,可以通過-i參數查看其他已安裝的規范
-i:查看已安裝的規范
-n:只顯示ERROR等級的報告
-s:列出違反的具體規則條目
–config-set:設置配置值
–config-show:列出所有已定義配置
–config-delete:刪除配置項
–report:報告格式,常用的有summary、xml、csv,默認為full
學會基本用法后,就可以開始按報告(report)修正自己的代碼了,但是有一個新的問題,就是已有的規范,要么太松,要么太緊,沒有完全符合項目實際需求的規范,可能我只用到了PEAR規范中的某幾條以及Squiz規范中的另外某幾條,其他的一律不想讓提示,于是,就需要有一套自己定義的規范了。
進入CodeSniffer的目錄,一般應該在這個位置:$PEAR/PHP/CodeSniffer。
不知道PEAR安裝在哪兒?好吧,用這個命令查看:pear config-get php_dir。
里邊的Standards目錄下,就是各種規范的定義,新建一個目錄,比如我的目錄叫MyCodeStanderd,進去后新建一個ruleset.xml文件,通過編寫xml配置,就可以定義自己的代碼規范了。
貼一段我配置的一個規范片段:
The QJP coding standard.
賦值表達式格式錯誤,變量與“=”之間應該空%d格,實際空了%d格
參數%s在函數中沒有用到
類名必須大寫字母開頭
類定義的左花括號 { 應另起一行
帶有默認值的參數,必須放到參數表的末端
函數/方法定義的左花括號 { 應另起一行
右花括號 } 應另起一行
右花括號 } 縮進空格數錯誤,應該為%d,實際為%d
縮進空格數錯誤,應該為%d,實際為%d
缺少函數/方法的塊注釋
錯誤的塊注釋格式,應以 /** 開頭
函數/方法的塊注釋中,缺少參數 %s 的說明
函數/方法的塊注釋中,缺少 @return 標簽
函數/方法的塊注釋中,@TAG標簽前需要空一行
參數注釋@param中,參數類型前應該只有一個空格
參數注釋@param中,%s(%d)與%s(%d)的參數名稱未對齊
參數注釋@param中,%s(%d)與%s(%d)的參數說明未對齊
參數注釋@param中,參數名“%s”與實際名稱不符
參數注釋@param中,缺少參數名稱
參數注釋@param中,缺少參數說明
最后一個參數注釋@param后,應該空一行
操作符前邊應該有一個空格
操作符后邊應該有一個空格
總結
以上是生活随笔為你收集整理的如何检查php代码规范,用CodeSniffer检查PHP项目的代码规范的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: python查看文件夹文件的所有权限,P
- 下一篇: fabric sdk php,基于 Fa
