首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> 網頁程式設計 >> PHP 程式設計 >> PHP 綜合知識

PHP 文件註解標籤與規範完整手冊(PHPDoc 相容)

     編輯:PHP 綜合知識

標準文件區塊格式

所有文件註解必須採用 DocBlock 格式:

/**
 * 簡短描述
 *
 * 詳細說明可跨多行,
 * 可包含標籤。
 */

每行開頭以 * 對齊,標籤以 @ 開頭。

常用標籤完整對照表

標籤適用範圍說明範例
@accessclass, function, var, define, module存取權限:private、public、protected@access public
@author所有作者姓名/信箱@author John Doe <john@example.com>
@copyrightclass, function, var, define, module, use版權聲明@copyright 2024 MyCompany
@deprecatedclass, function, var, define, module, constant, global, include標記棄用,建議替代方案@deprecated 2.0 使用 newMethod()
@example所有引用外部範例檔,PHPDoc 會高亮顯示@example /path/to/example.php
@constdefine說明常數@const int MAX_RETRY 3
@finalclass, function, var禁止繼承/覆寫/修改@final
@filesource所有直接顯示當前檔案原始碼@filesource
@globalfunction函數內引用的全域變數@global array $config
@ignore所有文件產生時忽略此元素@ignore
@license所有授權連結與名稱@license https://opensource.org/licenses/MIT MIT
@link所有相關連結(可指向文件內其他元素)@link https://example.com/api
@name所有為元素指定別名@name RealClassName
@packagepage-level: define, function, include
class-level: class, var, methods
邏輯分組@package MyProject\Core
@abstractclass標記抽象類別@abstract
@paramfunction, method參數說明:型別 名稱 描述@param string $name 使用者名稱
@returnfunction, method回傳值:型別 描述@return bool 是否成功
@staticfunction, var標記靜態成員@static
@varvar, property變數/屬性型別@var string
@version所有版本號@version 1.2.3
@todo所有待辦事項@todo 加入快取機制
@throwsfunction, method可能拋出的例外與條件@throws InvalidArgumentException 參數無效

Inline 標籤({@...})

標籤用途
{@link}行內連結,用法同 @link
{@source}顯示函數/方法原始碼片段

團隊協作規範(必遵守)

  1. 格式統一:一律使用 /** ... */,禁止單行 // 或 /* */ 當文件註解。
  2. 全域變數必標 @global:函數內引用 $GLOBALS 或 global $x 時必須標註。
  3. 變數必標 @var:包含型別(int, string, bool, array, ClassName)。
  4. 函數必標 @param @return:缺一不可。
  5. 重複元素用 @ignore:同一專案出現多次(如多檔案定義相同常數)只保留一份文件。
  6. 跨檔引用用 @link:方便文件閱讀跳轉。
  7. 非文件性註解:邏輯複雜處加上 // 或 /* */ 提升可讀性。
  8. 描述簡潔:優先用片語,非完整句子。
  9. 全域/靜態/常數必標對應標籤:@global, @static, @const。

完整範例

<?php
/**
 * 使用者服務類別
 *
 * 處理使用者註冊、登入、資料更新等核心業務邏輯。
 *
 * @package    App\Services
 * @author     Jane Chen <jane@example.com>
 * @copyright  2024 MyCompany
 * @version    2.1.0
 */
class UserService
{
    /**
     * @var PDO 資料庫連線物件
     */
    private $db;

    /**
     * 建構子
     *
     * @param PDO $pdo 已連線的 PDO 實例
     */
    public function __construct(PDO $pdo)
    {
        $this->db = $pdo;
    }

    /**
     * 註冊新使用者
     *
     * @param string $email    信箱,唯一鍵
     * @param string $password 明文密碼,將自動雜湊
     * @param string $name     暱稱
     * @return int             新使用者 ID
     * @throws InvalidArgumentException 信箱格式錯誤或已存在
     */
    public function register(string $email, string $password, string $name): int
    {
        // 實作略
    }
}
?>
  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved