PHP的PSR系列規範

  PSR,即系列推薦標準,目前經過的規範有psr-0,psr-1,psr-2,psr-3,psr-4,它並非PHP官方的標準,而是從zend,Symfony2等知名的項目裏提煉的標準,制定該標準的組織是PHP-FIG(PHP標準組)。php

  PSR-0,即類的自動加載規範,可是從2014-10-21起,該規範被過期或者廢棄,由PSR-4代替,更爲簡潔!git

1.一個徹底合格的命名空間和類名必須有如下的結構「\<Vendor Name>\Namespace\class namegithub

2.每一個命名空間必須有頂級的命名空間。函數

3.每一個命名空間能夠有任意多個子命名空間。編碼

4.每一個命名空間在被從文件系統加載時必須轉化爲路徑分隔符(DIRECTORY_SEPARATOR)(實際上最後也是被include)。spa

5.'_' 在命名空間中沒有特殊意義,要以.php結尾。接口

  PSR-4get

1.術語「類」是一個泛稱;它包含類,接口,traits 以及其餘相似的結構;it

2.自動載入器的實現不可拋出任何異常,不可引起任何等級的錯誤;也不該返回值class

3.徹底限定類名應該相似以下範例:

<namespacename>(<subnamespacenames>)*<classname>< p="">

  1. 徹底限定類名必須有一個頂級命名空間(Vendor Name);
  2. 徹底限定類名能夠有多個子命名空間;
  3. 徹底限定類名應該有一個終止類名;
  4. 下劃線在徹底限定類名中是沒有特殊含義的;
  5. 字母在徹底限定類名中能夠是任何大小寫的組合;
  6. 全部類名必須以大小寫敏感的方式引用;

 

 

  PSR-1,基礎編碼標準。

1.源文件必須使用<?php 和<?=這兩種標籤。

2.源文件中的PHP代碼必須使用不帶BOM的UTF-8.

3.一個源文件建議只用來作聲明(類,方法和常量)或者作一些引發反作用的操做(輸出信息,修改.ini文件),可是不該該同時作這兩件事情。

4.類名和文件名使用大寫駝峯。

5.常量去使用大寫字母和下劃線。

6.方法名使用小寫駝峯

  PSR-2,編碼風格

  • 代碼必須遵照 PSR-1

  • 代碼必須使用4個空格的縮進,而不是製表符。

  • 一行代碼長度不該硬性限制;軟限制必須爲120個字符;也應當是80個字符或者更少。

  • 在namespace聲明下面必須有一個空行,而且use聲明代碼塊下面也必須有一個空行。

  • 類的左花括號必須放到下一行,右花括號必須放在類主體的下一行。

  • 方法的左花括號必須放在下一行,右花括號必須放在方法主體下面。

  • 全部的屬性和方法必須有可見性(譯者注:Public, Protect, Private)聲明;abstract和final聲明必須在可見性以前;static聲明必須在可見性以後。

  • 控制結構的關鍵詞必須在後面有一個空格; 方法和函數不可有。

  • 控制結構的左花括號必須放在同一行,右花括號必須放在控制主體的下一行。

  • 控制結構的左括號後面不可有空格,右括號以前不可有空格

相關文章
相關標籤/搜索