?
This document uses PHP Chinese website manual Release
PHP 社區(qū)百花齊放,擁有大量的函數(shù)庫、框架和組件。PHP 開發(fā)者通常會在自己的項(xiàng)目中使用若干個(gè)外部庫,因此 PHP 代碼遵循(盡可能接近)同一個(gè)代碼風(fēng)格就非常重要,這讓開發(fā)者可以輕松地將多個(gè)代碼庫整合到自己的項(xiàng)目中。
框架互操作標(biāo)準(zhǔn)組 提出并通過了一系列的編碼風(fēng)格建議。其中有部分是關(guān)于代碼風(fēng)格的,即 PSR-0、PSR-1、PSR-2 和 PSR-4。這些建議只是一些正在被開源項(xiàng)目所遵循的規(guī)則,如 Drupal、Zend、Symfony、Laravel、CakePHP、phpBB、AWS SDK、FuelPHP、Lithium 等。你可以把這些規(guī)則用在自己的項(xiàng)目中,或者繼續(xù)使用自己的風(fēng)格。
理想情況下,你應(yīng)該遵循一個(gè)已知的標(biāo)準(zhǔn)來編寫 PHP 代碼??赡苁?PSR、PEAR 或 Zend 編碼準(zhǔn)則中的一個(gè)。這樣做的好處是其他開發(fā)者能夠方便的閱讀和使用你的代碼,并且使用這些組件的應(yīng)用程序可以和其他第三方的組件保持一致。
你可以使用 PHP_CodeSniffer 來檢查代碼是否符合這些準(zhǔn)則,文本編輯器 Sublime Text 的插件也可以提供實(shí)時(shí)檢查。
你可以通過以下兩個(gè)工具來自動修復(fù)代碼布局:
一個(gè)是 PHP Coding Standards Fixer,它具有良好的代碼測試。
另外一個(gè)工具是 PHP Code Beautifier and Fixer,它被包含在 PHP_CodeSniffer 中,也可以調(diào)整你的代碼格式。
你可以在命令行中手動運(yùn)行 phpcs :
phpcs -sw --standard=PSR2 file.php
它可以把出錯(cuò)的地方列出來并且指示如何修改。 它還可以用在 git hook 中。 在這種使用方式下,如果你的分支代碼不符合選擇的代碼標(biāo)準(zhǔn)則無法提交,直到修改之后才能提交。
If you have PHP_CodeSniffer, then you can fix the code layout problems reported by it, automatically, with the PHP Code Beautifier and Fixer. phpcbf -w --standard=PSR2 file.php
另一種選擇是使用 PHP Coding Standards Fixer。 他可以在修正錯(cuò)誤之前列出代碼結(jié)構(gòu)中的錯(cuò)誤和錯(cuò)誤類型。
php-cs-fixer fix -v --level=psr2 file.php
所有的變量名稱以及代碼結(jié)構(gòu)建議用英文編寫。注釋可以使用任何語言,只要讓現(xiàn)在以及未來的小伙伴能夠容易閱讀理解即可。