2009-07-25 53 views
28

我知道PHP代碼內聯文檔有很多不同的標準。這就是我的意思是通過內聯文檔,並請糾正我,如果有一個更好的詞:你如何記錄你的PHP函數和類內聯?

/** 
* This is the description for the class below. 
* 
* @package my-package 
* @subpackage my-subpackage 
* @author  my-name 
* @version my-version 
* ... 
*/ 
class orderActions { 
... 

什麼是內聯文檔的最好的和最廣泛接受的形式?是否有任何工具可以自動生成此類文檔,還是必須手動完成?

我對生成手冊不感興趣 - 我想知道如何生成上面的代碼註釋類型或「內聯文檔」。

+0

您的最新修改意味着什麼?我不明白「如何生成這個內聯文檔」的含義。 – 2009-07-25 19:14:38

+0

對不起,澄清:我在示例中問如何生成代碼註釋類型(或「內聯文檔」)。 – 2009-07-25 19:16:21

回答

40

PHPDoc就像您發佈的內容一樣,它是一種廣泛接受的PHP文檔形式。您可以使用Doxygen自動生成文檔。

編輯:關於在代碼中生成聯機文檔,我從來沒有遇到過一個可以返回並在項目外部執行此操作的工具。它通常留在IDE的領域中,以便在編碼時生成模板。 (這是我喜歡Eclipse的幾件事情之一),我相信Netbeans也是如此。任何主要的IDE都可能具有協助這種模板生成的功能。

+3

PHPDocumentor可能是最常用的添加API文檔的推薦方式。 – 2009-07-25 19:10:58

0

雖然我還沒有完全使用它,Doxygen看起來很有希望完成這項任務。

如果您熟悉用於Java的JavaDoc工具,則非常相似。您使用Doxygen樣式,然後在源文件上運行該工具以生成文檔。

0

不知道你的代碼是什麼,但我有幾個片段(我使用Textmate),我只是在工作中添加)我發現這最終以最好的結果,因爲我填寫的細節而不是相信一個系統爲我做。

這在一開始更多的工作,但它似乎是值得的,從長遠來看

1

我創建了一個documentator使用起來非常簡單,用PHPDoc的兼容:

例子:

<?php 
    $docs = new QuickDocumenter(); 
    $docs->parseString(" 
    /** 
    * Sanitize string 
    * 
    * @sinse  1.0 
    * @version 1.0 
    */ 
    "); 
    foreach($docs->result() as $doc) 
    { 
     highlight_string(print_r($doc , true)); 
     echo "<hr/>"; 
    } 
?> 

見Github上:

https://github.com/olaferlandsen/QuickDocumenter

再見!