1 文件結構
|
|――images
|――include
|――parameter
|――config
|――function
|――index
images存放圖片文件,include中是系統是要引用的文件,一般在parameter中存放參數文件,config中存放配置文件,function中存放方法文件,如javascript的方法等,並按功能模塊的分類,將各功能的類也放入其中
2 文件名
文件夾命名一般採用英文,長度一般不超過20個字符,命名採用小寫字母。除特殊情況才使用中文拼音,一些常見的文件夾命名如:images(存放圖形文件),flash(存放Flash文件),style(存放CSS文件),scripts(存放Javascript腳本),inc(存放include文件),link(存放友情鏈接),media(存放多媒體文件)等。文件名稱統一用小寫的英文字母、數字和下劃線的組合。
3 源文件的編碼規範
所有的源文件都應該在開頭有一個C語言風格的註釋,其中列出類名、功能、版本信息、日期、作者和版權聲明:
/*
* 類名
* 功能
* 版本
* 日期
* 作者
* 版權
*/
如果對文件進行了修改,應該在文件頭中說明修改目的、修改日期、修改人,並變更文件的版本信息;如果修改問文件的一部分,則在文件中進行註釋即可,並且標識出修改部分的起止位置
……
/*
* 修改目的
* 修改日期
* 修改人
* 版本
*/
……
修改起始
……
……
修改結束
……
引入語句應該位於文件的頭部,並在引入時說明引入文件的作用。例如:
//數據庫操作類
require( “db.php” );
1 類文檔註釋(/**……*/) 該註釋中所需包含的信息,參見"文檔註釋"
2 類的聲明
3 類實現的註釋(/*……*/)如果有必要的話 該註釋應包含任何有關整個類的信息,而這些信息又不適合作爲類文檔註釋。
4 類的(靜態)變量 首先是類的公共變量,隨後是保護變量,再後是包一級別的變量(沒有訪問修飾符,access modifier),最後是私有變量。
5 實例變量 首先是公共級別的,隨後是保護級別的,再後是包一級別的(沒有訪問修飾符),最後是私有級別的。
6 構造器
7 方法 這些方法應該按功能,而非作用域或訪問權限,分組。例如,一個私有的類方法可以置於兩個公有的實例方法之間。其目的是爲了更便於閱讀和理解代碼
4個空格常被作爲縮進排版的一個單位。縮進的確切解釋並未詳細指定(空格 vs. 製表符)。一個製表符等於8個空格(而非4個),所以在某些編輯器中,需要特別指定一下製表符的長度爲4(UltraEdit),而在某些編輯器中,會將製表符轉換爲空��
4 註釋
塊註釋通常用於提供對文件,方法,數據結構和算法的描述。塊註釋被置於每個文件的開始處以及每個方法之前。它們也可以被用於其他地方,比如方法內部。在功能和方法內部的塊註釋應該和它們所描述的代碼具有一樣的縮進格式。
塊註釋之首應該有一個空行,用於把塊註釋和代碼分割開來,比如:
/*
* 這裏是塊註釋
*/
塊註釋可以以/*-開頭,這樣indent(1)就可以將之識別爲一個代碼塊的開始,而不會重排它。
/*-
* 如果想被忽略,可是使用特別格式的塊註釋
*
* one
* two
* three
*/
注意:如果你不使用indent(1),就不必在代碼中使用/*-,或爲他人可能對你的代碼運行indent(1)作讓步。
短註釋可以顯示在一行內,並與其後的代碼具有一樣的縮進層級。如果一個註釋不能在一行內寫完,就該採用塊註釋。單行註釋之前應該有一個空行。以下是一個代碼中單行註釋的例子:
if (condition) {
/* 以下代碼運行的條件 */
...
}
極短的註釋可以與它們所要描述的代碼位於同一行,但是應該有足夠的空白來分開代碼和註釋。若有多個短註釋出現於大段代碼中,它們應該具有相同的縮進。
以下是一個代碼中尾端註釋的例子:
if ($a == 2) {
return TRUE; /* 對單一條件的說明 */
} else {
return isPrime($a); /* 其餘的條件 */
}
註釋界定符"//",可以註釋掉整行或者一行中的一部分。它一般不用於連續多行的註釋文本;然而,它可以用來註釋掉連續多行的代碼段。以下是所有三種風格的例子:
if ($foo > 1) {
// 第二種用法.
...
}
else {
return false; // 說明返回值的原因
}
//if ($bar > 1) {
//
// // 第三種用法
// ...
//}
//else {
// return false;
//}
文檔註釋描述php的類、構造器,方法,以及字段(field)。每個文檔註釋都會被置於註釋定界符/**...*/之中,一個註釋對應一個類或成員。該註釋應位於聲明之前: php學習之家
/**
* 說明這個類的一些 ...
*/
class Example { ...
注意頂層(top-level)的類是不縮進的,而其成員是縮進的。描述類的文檔註釋的第一行(/**)不需縮進;隨後的文檔註釋每行都縮進1格(使星號縱向對齊)。成員,包括構造函數在內,其文檔註釋的第一行縮進4格,隨後每行都縮進5格。 www.444p.com
若你想給出有關類、變量或方法的信息,而這些信息又不適合寫在文檔中,則可使用實現塊註釋(見5.1.1)或緊跟在聲明後面的單行註釋(見5.1.2)。例如,有關一個類實現的細節,應放入緊跟在類聲明後面的實現塊註釋中,而不是放在文檔註釋中。
文檔註釋不能放在一個方法或構造器的定義塊中,因爲程序會將位於文檔註釋之後的第一個聲明與其相關聯。