萬盛學電腦網

 萬盛學電腦網 >> 網絡編程 >> php編程 >> php編程代碼規范學習筆記(適合初學者)(1/2)

php編程代碼規范學習筆記(適合初學者)(1/2)

php編程代碼規范我們會從幾個方法來介紹,如:命名規范 常用名詞 代碼重構了,下面我先整理一些規范之後再整理一些筆記,希望文章對各位朋友會帶來一些幫助哦。

命名規范

Θ 類文件都以.class.php為後綴,使用駝峰法命名,並且首字母大寫,例如 Pay.class.php;
Θ 類名和目錄_文件名一致。例如:類名Zend_Autoloader的目錄是Zend/Autoloader.class.php;
Θ 函數的命名使用小寫字母和下劃線的方式。例如:get_client_ip;
Θ 方法的命名使用駝峰法,首字母小寫或者使用下劃線”_”,例如listComment(),_getResource(),通常下劃線開頭的方法屬於私有方法;
Θ 屬性的命名使用駝峰法,首字母小寫或者使用下劃線”_”,如$username,$_instance,通常下劃線開頭的屬性屬於私有屬性;
Θ 常量以大寫字母和下劃線”_”命名,如”HOME_URL”;

常用名詞

1>list名詞(單數),如listApple,一看我們就知道讀取蘋果列表,我們沒有必要寫成getApples或者listApples或readApples——因為get我們規定一般用於讀取單個數據,如getApple.listApples不加s我們也知道是取蘋果列表(保證盡量縮短變量命名);
2>get名詞(單數);
3>名詞Total,表示某個東西的總數。如expenseTotal;
4>found:表示某個值是否已經找到;
5>uccess或ok:一項操作是否成功;
6>done:某個工程是否完成;
7>error:是否有錯誤發生;
8>result:返回的結果

代碼重構

1.函數或者方法體內的代碼盡量控制在一個屏幕內。
2.類中不使用的方法隨機刪除。
3.修改別人的類中方法,要簽名。
4.在每個模塊內寫個readme文件(用於比較復雜業務的說明或代碼說明)。
5.盡量讓每個類做自己的事,每個函數做一件事。

下面補充一些方法

一、文件格式

1. 對於只含有 php 代碼的文件,我們將在文件結尾處忽略掉 "?>" 。這是為了防止多余的空格或者其它字符影響到代碼。
例如:

 代碼如下 復制代碼 <?php
$foo = 'foo';
2. 縮進應該能夠反映出代碼的邏輯結果,盡量使用四個空格,禁止使用制表符TAB,因為這樣能夠保證有跨客戶端編程器軟件的靈活性。
例如:
if (1 == $x) {
    $indented_code = 1;
    if (1 == $new_line) {
        $more_indented_code = 1;
    }
}

3. 變量賦值必須保持相等間距和排列。
例如:

 代碼如下 復制代碼 $variable = 'demo';
$var      = 'demo2';

4. 每行代碼長度應控制在80個字符以內,最長不超過120個字符。因為 linux 讀入文件一般以80列為單位,就是說如果一行代碼超過80個字符,那麼系統將為此付出額外操作指令。這個雖然看起來是小問題,但是對於追求完美的程序員來說也是值得注意並遵守的規范。
5. 每行結尾不允許有多余的空格。

二、命名約定

1. 類文件都是以“.class.php“為後綴,且類文件名只允許字母,使用駝峰法命名,並且首字母大寫,例如:DbMysql.class.php 。
2. 配置和函數等其他類庫文件之外的文件一般是分別以“.inc.php“和”.php“為後綴,且文件名命名使用小寫字母和下劃線的方式,多個單詞之間以下 劃線分隔,例如config.inc.php , common.php,install_function.php 。
3. 確保文件的命名和調用大小寫一致,是由於在類Unix系統上面,對大小寫是敏感的。
4. 類名和文件名一致(包括上面說的大小寫一致),且類名只允許字母,例如 UserAction類的文件命名是UserAction.class.php, InfoModel類的文件名是InfoModel.class.php 。
5. 控制器類以Action為後綴,例如 UserAction、InfoAction ,模型類以Model為後綴,例如UserModel、InfoModel ,其他類也分別以相應分類為後綴,例如Service 、Widget。
6. 方法名只允許由字母組成,下劃線是不允許的,首字母要小寫,其後每個單詞首字母要大寫,即所謂的 “駝峰法命名” 規則,且越詳細越好,應該能夠描述清楚該方法的功能,例如switchModel、findPage。
7. 屬性的命名只允許由字母組成,下劃線是不允許的,首字母要小寫,其後每個單詞首字母要大寫,即所謂的 “駝峰法命名” 規則,例如tablePrefix、tableName 。
8. 對於對象成員的訪問,我們必須始終使用 “get” 和 “set” 方法。例如:

 代碼如下 復制代碼

class Foo
{
    protected $_testObj;
    public function getTestObj()

    {
        return $this->_testObj;
    }
    public function setTestObj($testObj)
    {
        $this->testObj = $_testObj;
    }
}

首頁 1 2 末頁

copyright © 萬盛學電腦網 all rights reserved