在寫代碼的時候,一個好的編碼規範,對咱們來講可以起到不少意向不到的效果。好比:php
一、提升咱們的編碼效率。整齊劃一的代碼方便咱們進行復制粘貼哦!數組
二、提升代碼的可讀性。閉包
三、顯示咱們專業。別人看到了咱們的代碼,發現整個代碼的書寫流程都整齊劃一,瞬間逼格就上去了!函數
四、方便團隊協同工做。你們使用同一的規範,這樣就消除了五花八分的書寫方式,同一協調!編碼
養成規範書寫代碼的好習慣spa
那麼一塊兒來看下都有那些規範呢?blog
PHP 代碼文件必須以 <?php起;io
代碼必須使用4個空格符而不是 tab 鍵進行縮進;function
PHP 代碼文件必須以 不帶 BOM 的 UTF-8 編碼;模板
純 PHP 代碼文件必須省略最後的 ?> 結束標籤;
全部 PHP 文件必須以一個空白行做爲結束;
全部 PHP 文件必須使用Unix LF (linefeed)做爲行的結束符;
視圖文件中的 PHP 代碼(模板代碼除外)必須使用 <?php ?> 長標籤 或 <?= ?> 短輸出標籤;必定不可以使用其它自定義標籤。
非空行後必定不能有多餘的空格符;
每行的字符數應該保持在80個以內, 不該該多於120個;
每行必定不能存在多於一條語句。
命名空間以及類必須符合 PSR 的自動加載規範:PSR-4;
PHP代碼中應該只定義類、函數、常量等聲明或只定義其餘會產生 從屬效應 的操做(如:生成文件輸出、引入文件以及修改 ini 配置文件等),兩者只能選其一;
類的命名必須遵循 StudlyCaps 大寫開頭的駝峯命名規範;
類中的常量全部字母都必須大寫,單詞間用下劃線分隔;
方法名稱必須符合 camelCase 式的小寫開頭駝峯命名規範;
use聲明必須位於namespace聲明以後, 每一個 namespace 命名空間聲明語句塊和 use 聲明語句塊後面,必須插入一個空白行;
類與方法的開始花括號({)必須寫在函數聲明後自成一行,結束花括號(})也必須寫在函數主體後自成一行;
關鍵詞 extends 和 implements必須寫在類名稱的同一行;
每條語句必定不能定義超過一個屬性,必定不可以使用關鍵字 var 聲明一個屬性;
類的屬性和方法必須添加訪問修飾符(private、protected 以及 public),不要使用下劃線_做爲前綴來區分屬性是 protected 或 private;
須要添加 abstract 或 final 聲明時, 必須寫在訪問修飾符前,而 static 則必須寫在其後;
方法及函數的聲明和調用時,方法名或函數名與參數左括號之間必定不能有空格,參數左括號後與右括號前也必定不能有空格,參數列表中每一個逗號後面必需要有一個空格,而逗號前面必定不能有空格。
PHP命名規範
控制結構轉折(else、else if、catch 以及 do ... while 結構中的 while)關鍵字與上一結構體的結束花括號(})必須寫在同一行中,二者之間必定有一個空格;
控制結構的開始花括號({)必須寫在聲明的同一行,而結束花括號(})必須寫在主體後自成一行;
控制結構的關鍵字後必需要有一個空格,右括號 ) 與開始花括號 { 間也必定有一個空格;
條件括號左括號後與右括號前必定不能有空格,兩個子句句之間(分號以後)必定有一個空格;
每一個結構體的主體都必須被包含在成對的花括號之中。
開始花括號必須寫在聲明的同一行,結束花括號必須緊跟主體結束的下一行;
閉包聲明時,關鍵詞 function 後以及關鍵詞 use 的先後都必需要有一個空格;
參數列表和變量列表的左括號後以及右括號前,必須不能有空格;
參數和變量列表中,逗號前必須不能有空格,而逗號後必需要有空格。
PHP全部 關鍵字 必須所有小寫,常量 true 、false 和 null 也必須所有小寫;
變量賦值和比較(包括控制結構條件語句和數組中)的操做符(=、>、< 以及 =>)兩端必須各有一個空格,但自增(++)自減(--)操做變量與符號之間必定不能有空格;
變量聲明應該使用下劃線分隔的小寫字母,不該該使用非通用的單詞簡寫,不該該出現英文之外的拼寫或簡寫;
array、emtpy、isset、unset 等關鍵字括號內的變量兩端必須不能有多餘的空格;
數組聲明和使用都應該使用[] 代替 array();
須要換行數組變量的聲明,數組開始符號([ 或 array()應該和操做符在同一行,數組的第一個元素應該在新的一行開始,且與上一行之間必須保持一個縮進,數組的結束符號([ 或 ])必須新起一行,且應該與變量的第一個字符對齊。
勿忘初心,方得始終