windows環境PhpStorm中簡單使用PHP_CodeSniffer規範php代碼

來源:互聯網
上載者:User

標籤:

為什麼使用PHP_CodeSniffer

一個Team Dev統一的編碼風格,有助於他人對代碼的理解和維護,對於大項目來說尤其重要。

PHP_CodeSniffer是PEAR中的一個用PHP5寫的用來檢查嗅探PHP代碼是否有違反一組預先設定好的編碼通訊協定的一個包,它是確保你的代碼簡潔一致的必不可少的開發工具,甚至還可以協助程式員減少一些語義錯誤。

什麼是Pear

由於PHP_CodeSniffer的安裝依賴PHP和Pear環境,那麼我們有必要瞭解下什麼是Pear。

來自百度百科:

PEAR是PHP擴充與應用庫(the PHP Extension and Application Repository)的縮寫。它是一個PHP擴充及應用的一個代碼倉庫,簡單地說,PEAR之於PHP就像是CPAN(Comprehensive Perl Archive Network)之於Perl。PEAR的基本目標是發展成為PHP擴充和庫代碼的知識庫,而這個項目最有雄心的目標則是試圖定義一種標準,這種標準將協助開發人員編寫可移植、可重用的代碼。安裝Pear

在已經安裝了PHP環境的前提下,進入php目錄,如果沒有go-pear.php檔案,就到http://pear.php.net/go-pear.phar下載go-pear.php檔案,該地址在瀏覽器開啟可以看到一段PHP的代碼,直接儲存檔案另存新檔go-pear.php到php根目錄下面。

使用管理員方式開啟命令列,輸入以下命令:

1 cd c:\php2 php go-pear.phar

 

這是出現:

1 Are you installing a system-wide PEAR or a local copy?2 (system|local) [system] :

 

直接斷行符號預設system繼續,出現如下:

 1 Below is a suggested file layout for your new PEAR installation.  To 2 change individual locations, type the number in front of the 3 directory.  Type ‘all‘ to change all of them or simply press Enter to 4 accept these locations. 5  6  1. Installation base ($prefix)                   : C:\php 7  2. Temporary directory for processing            : C:\php\tmp 8  3. Temporary directory for downloads             : C:\php\tmp 9  4. Binaries directory                            : C:\php10  5. PHP code directory ($php_dir)                 : C:\php\pear11  6. Documentation directory                       : C:\php\docs12  7. Data directory                                : C:\php\data13  8. User-modifiable configuration files directory : C:\php\cfg14  9. Public Web Files directory                    : C:\php\www15 10. System manual pages directory                 : C:\php\man16 11. Tests directory                               : C:\php\tests17 12. Name of configuration file                    : C:\WINDOWS\pear.ini18 13. Path to CLI php.exe                           : C:\php19 20 1-13, ‘all‘ or Enter to continue:

 

直接斷行符號,出現如下,表示安裝成功,

/*省略*/The ‘pear‘ command is now at your service at c:\php\pear.bat/*省略*/

在php根目錄下面會看到如下幾個檔案:

雙擊pear.bat檔案,註冊pear到當前環境。

安裝 PHP_CodeSniffer

在安裝完pear之後,就可以安裝php_CodeSniffer了,繼續在cmd中輸入:

1 pear install PHP_CodeSniffer

等待安裝完成,安裝完成後php根目錄下回出現以下兩個檔案:

按照依次開啟檔案夾,在看如下目錄結構:

在php->pear->PHP->CodeSniffer->Standards中可以看到一些php的規範,Generic是通用規範。

現在我們就可以使用這些規範來檢測我們的php代碼了,先說說在命令列中如何使用。

我們可以使用phpcs -h來看看使用協助:

phpcs -h

 看到的如下:

這裡我只簡單的說明如何檢查單個檔案或整個檔案目錄:

1 phpcs -n F:\Hg\web\application\controllers\  //檢測檔案目錄2 phpcs -n F:\Hg\web\application\controllers\home_controller.php  //檢測單個檔案

 看到如下結果(單個檔案):

這樣,我們就可以根據這些錯誤資訊去修改我們的代碼,使其符合規範。

我們可以指定使用某一個規範進行檢測,方法如下:

1 phpcs -n --standard=Zend F:\Hg\web\application\controllers\

 

不指定標準,會使用php通用規範Generic。

安裝CodeIgniter標準

去https://github.com/thomas-ernest/CodeIgniter-for-PHP_CodeSniffer下載包解壓,複製src目錄到php->pear->PHP->CodeSniffer->Standards目錄下,並且改名為CodeIgniter

為解壓後圖

為放到php代碼規範下後的圖。

現在就可以使用CodeIgniter標準檢測代碼了:

1 phpcs -n --standard=CodeIgniter F:\Hg\web\application\controllers\

 

PHPSTORM配置PHP_CodeSniffer檢測環境

 開啟phpstorm的配置框,找到Languages & Frameworks -> php-> Code Sniffer,不同版本的phpstorm可能會有出入,直接搜尋Code Sniffer也可以。

點擊如下進行編輯:

設定PHP Code Sniffer path為phpcs.bat的路徑。

 點擊Validate,出現如表示設定成功:

開啟配置搜尋Inspections, 展開PHP,勾選PHP Code Sniffer validation, 選擇Coding standard為CodeIgniter, 點擊OK確定。

接下來,在編碼PHP的時候就會出現規範提示

 

如,滑鼠移動到有波浪提示的地方,就會出現phpcs的規範提示了。

配置到此結束,希望可以幫到需要的程式猿!

 

最規範的代碼就是不出現任何的波浪提示。

 

 

參考:

http://baike.baidu.com/subview/20453/16587839.htm

windows環境PhpStorm中簡單使用PHP_CodeSniffer規範php代碼

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.