0

リフレクションを使用してメソッドからドキュメント コメントを取得しています: http://www.php.net/manual/en/reflectionclass.getdoccomment.php、次のようになります。

   /** 
    * Method description
    *
    * @param  array $foo    Bla bla
    * @return string        More bla bla
    */

この文字列を処理できるものに解析するにはどうすればよいですか? そこから「メソッドの説明」テキストを抽出する必要があります。他のリフレクションメソッドを使用してパラメーターなどを取得できるため、他のことは私にとって重要ではありません。

4

3 に答える 3

2
trim(str_replace(array('/', '*'), '', substr($rc->getDocComment(), 0, strpos($rc->getDocComment(), '@'))));

コメントが常にその形式であると仮定します。

于 2012-07-12T22:49:47.303 に答える
1

コメントの解析についてはあまり経験がありませんが、これを文字列として扱うと、次のようになります。

  1. 新しい行で爆発します:
  2. スペースをトリミングして*アウト

このようなもの:

<?php

$string = "   /** 
    * Method description
    *
    * @param  array $foo    Bla bla
    * @return string        More bla bla
    */";

$parts = explode("\n",$string);
$comment = trim($parts[1]," *");
echo $comment; // will echo "Method description"

ただし、説明が複数行にある可能性があるため、おそらく理想的ではありません。

于 2012-07-12T23:02:45.503 に答える