PHP注釋文法規範與命名規範詳解

來源:互聯網
上載者:User
注釋在寫代碼的過程中非常重要,好的注釋能讓你的代碼讀起來更輕鬆,在寫代碼的時候一定要注意注釋的規範,這裡指令碼之家小編就為大家整理一下,需要的朋友可以參考下

HP注釋規範

注釋在寫代碼的過程中非常重要,好的注釋能讓你的代碼讀起來更輕鬆,在寫代碼的時候一定要注意注釋的規範。

“php是一門及其容易入門的語言,剛入門的新手不到幾分鐘的時間可能就會用echo列印出一個hello world !但是他是真正的程式員嗎?怎麼來定義程式員呢?如果想真正成為一個程式員,那麼就必須遵循一套程式書寫規範,”

我們經常編寫一些函數,但是這些函數可能也只有自己能看得懂,甚至過一段時間自己也不認識自己寫的了,那麼怎麼辦呢?最好的辦法當然是給給自己的代碼加上注釋。

我們可能熟悉很多注釋的寫法C pear PHP注釋等等,但我們用到的主要還是# 和/**/。

#是一種簡短的注釋方法。可能你會用它去注釋一個變數,或者調用的一個方法。/**/我們可能還在用它去注釋掉一大段代碼,但是怎麼用它去標準的注釋一個函數呢?

/**
* @name 名字
* @abstract 申明變數/類/方法
* @access 指明這個變數、類、函數/方法的存取許可權
* @author 函數作者的名字和郵箱地址

* @category 組織packages
* @copyright 指明著作權資訊
* @const 指明常量
* @deprecate 指明不推薦或者是廢棄的資訊
* @example 樣本
* @exclude 指明當前的注釋將不進行分析,不出現在文擋中
* @final 指明這是一個最終的類、方法、屬性,禁止派生、修改。
* @global 指明在此函數中引用的全域變數
* @include 指明包含的檔案的資訊
* @link 定義線上串連
* @module 定義歸屬的模組資訊
* @modulegroup 定義歸屬的模組組
* @package 定義歸屬的包的資訊
* @param 定義函數或者方法的參數資訊
* @return 定義函數或者方法的返回資訊
* @see 定義需要參考的函數、變數,並加入相應的超級串連。
* @since 指明該api函數或者方法是從哪個版本開始引入的
* @static 指明變數、類、函數是靜態。
* @throws 指明此函數可能拋出的錯誤異常,極其發生的情況
* @todo 指明應該改進或沒有實現的地方
* @var 定義說明變數/屬性。
* @version 定義版本資訊
*/

注釋的資訊很全面,可能有很多我們用不到,紅色部分是我們經常用到的。

樣本:php裡面常見的幾種注釋方式:

1.檔案的注釋,介紹檔案名稱,功能以及作者版本號碼等資訊

/*** 檔案名稱簡單介紹* * 檔案功能* @author 作者* @version 版本號碼* @date 2020-02-02*/

檔案頭部模板

/** *這是一個什麼檔案 * *此檔案程式用來做什麼的(詳細說明,可選。)。 * @author   richard<e421083458@163.com> * @version   $Id$ * @since    1.0 */

2.類的注釋,類名及介紹

/*** 類的介紹* * 類的詳細介紹(可選)* @author 作者* @version 版本號碼* @date 2020-02-02*/

/** * 類的介紹 * * 類的詳細介紹(可選。)。 * @author     richard<e421083458@163.com> * @since     1.0 */ class Test  { }

3.函數的注釋,函數的作用,參數介紹以及傳回型別

/*** 函數的含義說明* * @access public * @author 作者* @param mixed $arg1 參數一的說明 * @param mixed $arg2 參數二的說明* @return array 傳回型別* @date 2020-02-02*/

函數頭部注釋

/** * some_func * 函數的含義說明 * * @access public * @param mixed $arg1 參數一的說明 * @param mixed $arg2 參數二的說明 * @param mixed $mixed 這是一個混合類型 * @since 1.0 * @return array */ public function thisIsFunction($string, $integer, $mixed) {return array();}

程式碼注釋

1. 注釋的原則是將問題解釋清楚,並不是越多越好。

2. 若干語句作為一個邏輯代碼塊,這個塊的注釋可以使用/* */方式。

3. 具體到某一個語句的注釋,可以使用行章節附註釋://。

/* 組建組態檔案、資料檔案。*/  $this->setConfig(); $this->createConfigFile(); //建立設定檔 $this->clearCache();     // 清除快取檔案 $this->createDataFiles();  // 產生資料檔案 $this->prepareProxys(); $this->restart();

PHP命名規範

1.目錄和檔案

目錄使用小寫+底線
類庫,函數檔案統一以.php為尾碼
類的檔案名稱均以命名空間定義,並且命名空間的路徑和類庫檔案所在路徑一致
類檔案採用駝峰法命名(首字母大寫),其他檔案採用小寫+底線命名
類名和類檔案名稱保持一致,統一採用駝峰法(首字母大寫)

2.函數和類,屬性命名

類的命名採用駝峰法(首字母大寫),例如 User、UserType,預設不需要添加尾碼,例如UserController應該直接命名為User
函數的命名使用小寫字母和底線(小寫字母開頭)的方式,例如 get_client_ip
方法的命名使用駝峰法(首字母小寫),例如 getUserName(如果方法有傳回值,那麼目前習慣上將首字母用小寫屬性類型,如s(string),i(int),f(float),b(boolean),a(array)等)
屬性的命名使用駝峰法(首字母小寫),例如 tableName、instance(目前習慣上將首字母用小寫屬性類型,如s(string),i(int),f(float),b(boolean),a(array)等)
以雙底線“__”打頭的函數或方法作為魔法方法,例如 __call 和 __autoload

3.常量和配置

常量以大寫字母和底線命名,例如 APP_PATH和 THINK_PATH
配置參數以小寫字母和底線命名,例如 url_route_on 和url_convert

4.資料表盒欄位

資料表和欄位採用小寫加底線方式命名,並注意欄位名不要以底線開頭,例如 think_user 表和 user_name欄位,不建議使用駝峰和中文作為資料表欄位命名。


您可能感興趣的文章:

php語言注釋,單行注釋和多行注釋的相關內容

phpstorm 正則匹配刪除空行、注釋行

通過源碼來解析Laravel依賴注入的相關內容

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.