PHP代碼樣式

來源:互聯網
上載者:User
如果使用第三方架構,並且有提供代碼樣式說明,則遵循其代碼樣式標準,否則如下!

== 格式:

* 使用UTF-8編碼

* 使用4個空格縮排,禁止使用Tab

* Unix樣式分行符號(LF)

* 在逗號、冒號和分號操作符使用空格

* 在 (,[ 後面、],) 前面不使用空格

* 在代碼塊中使用4個空格縮排

* 採用層級縮排

* 在return方法的傳回值前使用空行(除非只有一行代碼)以及在兩個方法中使用空行區分

* 在兩個大的邏輯程式碼片段之間使用空行區分

* 保持行字數在80字以內,最多不超過120

* 使用標準的PHP標籤定界,禁止使用短標籤(<? //... ?>),對於只包含有PHP代碼的文
件,禁止使用PHP結束標誌("?>"),檔案末尾使用注釋說明"/* End of file <filename.php> */"

* 單行代碼也必須使用分號(;)結束

== 命名:

* 檔案名稱使用snake_case方式,禁止使用臃腫的檔案名稱

* 變數名使用snake_case方式,禁止使用臃腫的變數名
* 禁止使用單字元做為局部變數(如$i),在for迴圈中除外
* 禁止使用大寫字母做為全域變數,如使用大寫字母,應使用SCREAMING_SNAKE_CASE方式

* 類名使用CamelCase方式,方法名使用camelCase方式(保持像HTTP,RFC,XML縮寫詞的大寫)

* 常量名使用SCREAMING_SNAKE_CASE方式

// badsuperclass.phpSuperClass.phpsuperClass.php$i = "foobar";  // 單字元變數只充許使用在for迴圈中$bufferdText   // 駝峰式變數,並且意思可以再精簡些$groupid        // 兩個單詞之間需要底線分開$name_of_last_city_used // 太長MyConstant       // 應該用底線並且字母沒有全大寫N                     // 單字元S_C_VER           // 意思不清楚class superclassclass superClassfunction fileproperties() // 意思不清楚並且沒有駝峰式命名function fileProperties() // 意思不清楚function getfileproperties() // 好些了,但沒有駝峰式命名// goodsuper_class.phpfor ($i = 0; $i < 10; $i++)$buffer$group_id$last_cityMY_CONSTANTNEWLINESUPER_CLASS_VERSIONclass SuperClassfunction getFileProperties()

== 文法:

對於嵌入HTML中的PHP代碼,對於像if, for, foreach, while等代碼塊,採用if: ... endif; for: ... endfor; foreach: ... endforeach;以及 while: ... endwhile;方法塊

Php代碼

...

<?php if ($user->isLoggedIn()): // checking logged in ?>

<!-- HTML goes here. -->

<?php endif; // end checking logged in ?>

<?php foreach ($users as $user): // loop users ?>

<!-- HTML goes here. -->

<?php endforeach; // end loop users ?>

...



== 注釋:

* 文檔塊必須和phpDocumentor格式相容,請參考: http://phpdoc.org/

* 避免多餘的意見

Php代碼

/**

* 控制器類說明資訊

*/

class Controller {

private static $instance;

public function __construct() {

...

}

/**

* 函數說明資訊

*/

public static function &get_instance() {

...

}

/* End of file controller.php */



== 其他:

* 保持代碼簡單

* 保持一致性

  • 聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.