2012-07-12 87 views
0

我使用反射來獲取從方法的文檔註釋: http://www.php.net/manual/en/reflectionclass.getdoccomment.php,它看起來像這樣:如何解析文檔註釋

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

如何可以解析這個字符串到的東西,我可以工作? 我需要從中提取「方法描述」文本。其他的東西對我來說並不重要,因爲我可以在格式使用其他反射方法來獲取參數等

+0

不知道這對你是否有用,但是你看過[phpDocumenter](http://www.phpdoc.org/)? – Wex 2012-07-12 22:47:17

回答

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

假設的寶貴意見。

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" 

然而,可能是不理想的,因爲該說明可能無法爲O n多於一行。