2017-03-24 5 views
0

私はPHP ReflectionClassを知っているので、PHPスクリプトからドキュメンテーションコメントを得ることができます。今では、クラスを使用していない数百もの古いPHPスクリプトを見てきましたが、単純なパブリック関数だけです。私が正しければ、ReflectionClassはここでは使用できません。私の目標は各文書のコメントを抽出することです。例えば。 test1.phpには、次の行が含まれていますクラスを使用していないPHPスクリプトからDocコメントを抽出するには?

<?php 
/** 
* some main comments here 
*/ 
...some php lines here... 

/** 
* function comment 
* Blah blah 
*/ 
function foo() 
{ 
...some php lines here... 
} 
...and more functions below each with comments 

?> 

だから私の希望出力に含まのようになりますようにテーブル:あなたはあなたが持っている場合には(結果は次のようになりReflectionFunction

$functions = get_defined_functions(); 

foreach ($functions['user'] as $function) { 

    $reflection = new ReflectionFunction($function); 

    var_dump($reflection->getName()); 
    var_dump($reflection->getDocComment()); 
} 

を使用することができます

-------------------------------------------------- 
| Filename | FUNCTION | Comment     | 
-------------------------------------------------- 
| test1.php |   | some main comments here | 
| test1.php | foo() | function comment  | 
|   |   | Blah Blah    | 
+0

いくつかのドキュメントジェネレータを試しましたか? http://phpdox.de/またはhttps://phpdoc.org/ – muescha

+0

ミューシャ、ありがとうございます。未だに。私はあなたが私にさらにヒントを与えることができれば感謝します:) – tatskie

答えて

1

定義されたfoo関数のみ):

string(3) "foo" 
string(43) "/** 
* function comment 
* Blah blah 
*/" 
+0

Matei、どのようにしてファイルtest1.phpを指定するのですか?私の場合は、何百人もの人々が 'test1.php'を' test100.php'と言います。 ReflectionFunctionは、現在どのPHPファイルが動作しているかをどのように知っていますか?許してください、私はグーグルでできるドキュメントはあまりありません。 – tatskie

+0

Matei、また、「test1.php」の先頭にある「いくつかの主なコメントはどうですか? PHPファイルの開始時には、これと同じようなコメントがあります。 – tatskie

+0

あなたの答えを正しく記入し、http://stackoverflow.com/questions/2197851/function-list-of-php-fileからJoachimにもクレジットを与える必要があります。 – tatskie

関連する問題