命名規則:采用駝峰標識,盡量做到見名知義
?
PHP編碼規范與原則:
//命名:類,方法,函數,變量,
注釋:開發中難免留下一些臨時代碼和調試代碼,此類代碼必須添加注釋,以免日后遺忘。所有臨時性、調試性、試驗性的代碼,必須添加統一的注釋標記“//debug”并后跟完整的注釋信息,這樣可以方便在程序發布和最終調試前批量檢查程序中是否還存在有疑問的代碼。
如:$flag = TRUE; //debug 這里不能確定是否需要對$flag進行賦值
?
縮進/空格:使用四個空格為每層次縮進。對于最大縮進層數,并沒有一個固定的規矩,假如縮進層數大于五層的時候,考慮著將代碼因數分解。
?
運算符、小括號、關鍵詞和函數:不要把小括號和關鍵詞緊貼在一起,要用空格隔開它們;不要把小括號和函數名緊貼在一起;除非必要,不要在Return返回語句中使用小括號。
如:
if (condition) {
}
?
大括號{}、if和switch:
首括號與關鍵詞同行,尾括號與關鍵字同列;
if結構中,if和elseif與前后兩個圓括號同行,左右各一個空格,所有大括號都單獨另起一行。另外,即便if后只有一行語句,仍然需要加入大括號,以保證結構清晰;總是將恒量放在等號/不等號的左邊。
switch結構中,通常當一個case塊處理后,將跳過之后的case塊處理,因此大多數情況下需要添加break。break的位置視程序邏輯,與case同在一行,或新起一行均可,但同一switch體中,break的位置格式應當保持一致。
如:
$result = (($a + 1) * 3 / 2 + $num)).’Test’;
If ($condition) {
}
else
{
}
?
switch ($var)
{
case 1: echo ‘var is1’; break;
case 2: echo ‘var is2’; break;
default: echo ‘var is neither 1 or2’; break;
}
continue,break?和 ??的使用:把條件放在括號內以使它和其他的代碼相分離;如果可能的話,動作可以用簡單的函數;把所做的動作,“?”,“:”放在不同的行,除非他們可以清楚的放在同一行。
如:
(condition) ? funct1() : func2();
或
(condition)
? long statement
: another long statement;
不要采用缺省方法測試非零值:
用if (FAIL != f()) 比if (f()) 好
布爾邏輯:
if (TRUE == func()) { …
應該寫成:
if (FALSE != func()) { …
避免嵌入式的賦值:
如:while ($a != ($c = getchar()))???? 要避免
?
引號:
寫數組的索引時,必須使用單引號??如:$test[‘key’]
絕大多數可以使用單引號的場合,禁止使用雙引號
聲明塊的定位:聲明代碼塊需要對齊
如:
var $mDate
var $mName
?
常量:常量應該總是全部使用大寫字母命名,少數特別必要的情況下,可使用劃線來分隔單詞
函數定義:參數的名字和變量的命名規范一致;函數定義中的左小括號,與函數名緊挨,中間無需空格;開始的左大括號另起一行;具有默認值的參數應該位于參數列表的后面;函數調用與定義的時候參數與參數之間加入一個空格;必須仔細檢查并切實杜絕函數起始縮進位置與結束縮進位置不同的現象。
包含調用:包含調用程序文件,請全部使用require_once,以避免可能的重復包含問題;
包含調用緩存文件,由于緩存文件無法保證100%正確打開,請使用include_once或include。在必要時,可以使用@include_once或@include的方式,以忽略錯誤提示;
注釋規則:
類注釋:
方法注釋
變量注釋
if (0)來注釋外部代碼塊
有時需要注釋大段的測試代碼,最簡單的方法就是使用if (0)塊:
你不能使用/**/,因為注釋內部不能包含注釋,而大段的程序中可以包含注釋。
?
PHP文件擴展名
所有瀏覽者可見頁面使用.html
所有類、函數庫文件使用.php
?
PHP代碼標記
統一使用<?php ?>,只輸出變量時<?=$username?>
?
SQL設計規范:
命名:表名,字段名,字段結構,索引名
表和字段命名:所有數據表名稱,只要其名稱是可數名詞,則必須以復數方式命名,例如:phpcms_member(用戶表);存儲多項內容的字段,或代表數量的字段,也應當以復數方式命名,例如:hits(查看次數)、items(內容數量)。
?
SQL語句書寫:所有SQL語句中,除了表名、字段名稱以外,全部語句和函數均需大寫,應當杜絕小寫方式或大小寫混雜的寫法。進行SQL執行的數據必須進行有效性檢測。
SQL語句書寫遵循優化原則
書寫規范:
HTML 屬性全部用雙引號
盡量不要穿插PHP代碼
輸出網頁的頁面不出現SQL語句