@author
@author
當前檔案的作者
語法
@author [name] [<\email address>]
描述
@author
可以後邊包含作者電子郵箱,通常電子郵箱由<>包裹
@deprecated
@deprecated
: 被此標記的函式或者成員方法表示下個版本將會被廢棄,告知適用方不再推薦使用此方法.
此標籤推薦使用PhpStorm進行閱讀,可以能直觀體現標籤的作用
語法
@deprecated [<\version>] [<description>]
描述
@deprecated
可以填寫一個版本號,版本號的規則同@version
- 如果被標記的方法只是因為被其他新方法代替而被廢棄,可以結合
@see
來表示被代替的方法
[@example](https://learnku.com/users/20807)
@inheritdoc
@inheritdoc
: 文件繼承,會繼承父類的文件註釋.
此標籤推薦使用PhpStorm進行閱讀,可以能直觀體現標籤的作用
語法
@inheritDoc
描述@inheritDoc
會繼承父類的所有文件註釋.在繼承之後可以對指定欄位進行重寫
標籤效果
直接繼承
繼承重寫
@link
@link
: 此標籤可以引導你到指定的外部跳轉連結.
此標籤推薦使用PhpStorm進行閱讀,可以能直觀體現標籤的作用
語法
@link [URI] [<\description>]
描述
該標籤只有1個跳轉選項
@外部跳轉連結
: 必須是滿足RFC2396的跳轉連結,例如http://github.com/
和@see的區別
- | @see | @link |
---|---|---|
外部連結 | √ | √ |
內部程式 | √ | X |
@method
@method
: 此標籤可告訴類有哪些魔術方法可以呼叫.
此標籤推薦使用PhpStorm進行閱讀,可以能直觀體現標籤的作用
語法
@method [modifier] [return type] [name]([[type] [parameter]<, …>]) [<\description>]
使用場景
當一個類用魔術方法__call
去代理執行類成員方法時,對於呼叫方來講是很迷茫的,因為呼叫方是無法知道具體有哪些方法可以呼叫. 通過引入@method
可以解決這個問題,可以在類註釋新增@method
,定義魔術方法可呼叫的方法,這樣呼叫法可以通過檢視註釋即可知道如何呼叫魔術方法,部分IDE可直接識別@method
標籤從而實現自動填充以及型別判斷.
標籤效果
IDE自動提示
最終效果
@mixin
@param
@param
: 可以記錄函式/方法的單個入參的資訊.
此標籤推薦使用PhpStorm進行閱讀,可以能直觀體現標籤的作用
語法
@param [Type] [name] [<\description>]
變數列表
標籤效果
@property
@property
: 當類中包含魔術方法get/set時,可以通過此標籤定義名稱.
此標籤推薦使用PhpStorm進行閱讀,可以能直觀體現標籤的作用
語法
@property [Type] [name] [<\description>]
使用場景
當一個類用魔術方法__get
或者__set
去代理執行類成員變數時,對於呼叫方來講是很迷茫的,因為呼叫方是無法知道具體有哪些成員. 通過引入@property
可以解決這個問題,可以在類註釋新增@property
定義成員變數,這樣呼叫法可以通過檢視註釋即可知道具體有哪些成員變數可以使用,部分IDE可直接識別@property
標籤從而實現自動填充以及型別判斷.
變數列表
標籤效果
IDE自動提示
最終效果
[@return](https://learnku.com/users/31554)
[[@return](https://learnku.com/users/31554)](https://learnku.com/users/31554)](https://learnku.com/users/31554)](https://learnku.com/users/31554)
: 用於在函式/方法返回值資訊.
此標籤推薦使用PhpStorm進行閱讀,可以能直觀體現標籤的作用
語法
[[[@return](https://learnku.com/users/31554)](https://learnku.com/users/31554)](https://learnku.com/users/31554) [Type] [<\description>]
變數列表
標籤效果
@see
@see
: 此標籤可以引導你到指定的外部跳轉連結/內部程式
此標籤推薦使用PhpStorm進行閱讀,可以能直觀體現標籤的作用
語法
@see [URI | FQSEN] [<\description>]
描述
該標籤可以有兩個跳轉選項
@外部跳轉連結
: 必須是滿足RFC2396的跳轉連結,例如http://github.com/@內部程式連結
: 可以跳轉到制定的類/方法/變數,如class::method
和@link的區別
- | @see | @link |
---|---|---|
外部連結 | √ | √ |
內部程式 | √ | X |
@throws
@throws
: 丟擲一個異常,告訴呼叫方需要做好處理異常相關工作.
此標籤推薦使用PhpStorm進行閱讀,可以能直觀體現標籤的作用
語法
@throws [Type] [<\description>]
標籤效果
@var
@var
: 定義一個資料的型別.
此標籤推薦使用PhpStorm進行閱讀,可以能直觀體現標籤的作用
語法
@var [Type] [$element_name] [<\description>]
變數列表
標籤效果
在類成員變數中定義,不需要指定變數名稱
直接給具體變數定義,需要指定變數名稱
@internal
@internal
: 被此標籤標記的內部類/方法,作用範圍只能限於當前檔案,外部檔案不可呼叫.
此標籤推薦使用PhpStorm進行閱讀,可以能直觀體現標籤的作用
語法
@internal [\description]
使用場景
此標籤通常可使用在單元測試中,比如在單元測試中定義了一個測試用的類,可對此測試類新增@internal
標籤,這樣別人在正常邏輯中萬一不小心錯誤引用了測試類,在IDE的幫助下,可以第一時間得到反饋.
標籤效果
@version
@copyright
@license
@since
@package
@todo
- 對於引用了全域性變數的函式,必須使用@glboal標記
- 對於變數,必須用
@var
標記其型別(int,string,bool…) - 函式必須通過
@param
和[[[[@return](https://learnku.com/users/31554)](https://learnku.com/users/31554)](https://learnku.com/users/31554)](https://learnku.com/users/31554)
標記指明其引數和返回值 - 對於出現兩次或兩次以上的關鍵字,要通過@ingore忽略掉多餘的,只保留一個即可
- 呼叫了其他函式或類的地方,要使用
@link
或其他標記連結到相應的部分,便於文件的閱讀。 - 必要的地方使用非文件性註釋,提高程式碼易讀性。
- 描述性內容儘量簡明扼要,儘可能使用短語而非句子。
- 全域性變數,靜態變數和常量必須用相應標記說明
參考文件