談談PHP代碼規範

[轉] http://www.syyong.com/php/Talk-about-PHP-code-specification.htmlphp

我向往這樣一個php世界,裏面沒有代碼規範之爭。你我都同樣,都遵循着一套如憲法般的規範,就像golang世界同樣。統一的命名法則,統一的縮進方式。而現實世界卻讓人落差很大,每一個不一樣的團隊就像不一樣的國家,都頒佈有本身的法律。穿梭於N個團隊之間你就得去適應N套規範。html

那麼php有沒有一套比較標準、比較建議去遵循的規範呢?答案是有的,那就是由PHP-FIG組織陸續發佈的PSR-1,PSR-2,PSR-3,PSR-4,PSR-6,PSR-7規範。PHP-FIG➫golang

PHP-FIG即PHP框架互操做工做組(PHP Framework Interoperability Group),最初由5各框架開發者於2009年成立,後來陸續有新成員加入,到目前爲止已有20個成員。該組織致力於推進php能有個共通編碼風格能夠遵循。PHP-FIG截止到2016/07/23(文章儘可能追蹤更新)已發佈的可接受的公認的(Accepted)規範有7個:緩存

  1. PSR-0 自動加載標準(2014/10/21被廢棄,由PSR-4替代)(Autoloading Standard➫
  2. PSR-1 基本編碼規範(Basic Coding Standard➫
  3. PSR-2 編碼規範指南(Coding Style Guide➫
  4. PSR-3 日誌接口(Logger Interface➫
  5. PSR-4 自動加載標準(Autoloading Standard➫
  6. PSR-6 緩存接口(Caching Interface➫
  7. PSR-7 HTTP消息接口(HTTP Message Interface➫

注:每一個不一樣的規範所針對的內容範圍不一樣(除了PSR-4是PSR-0的替代者),它們之間不是所謂版本升級的關係。框架

php編輯器中phpstorm、zend studio都有對PSR的支持。但願PSR規範能終結目前混沌的世界!!!phpstorm

 

參考連接

相關文章
相關標籤/搜索