Symfony2评论变量和函数

Tom*_*azi 0 php symfony

我开始学习Symfony2,其中一件令我印象深刻的是上面的众多评论variables,functions如下所示:

变量示例:

    /**
 * @var string
 */
private $baseUrl = 'news/';
Run Code Online (Sandbox Code Playgroud)

要么:

/**
 * @var FeedRepository
 */
private $feedRepo;
Run Code Online (Sandbox Code Playgroud)

功能:

/**
 * @param ArticleQuery $query
 * @return QueryBuilder
 */
public function test(){


}
Run Code Online (Sandbox Code Playgroud)

有人可以向我解释为什么要使用这些,为什么这样做..?

Fra*_*ula 5

PHPDoc是Javadoc对PHP编程语言的改编.它仍然是评论PHP代码的非正式标准,但它正处于正式化的过程中.它允许像phpDocumentor这样的外部文档生成器生成API文档,并帮助一些IDE(如Zend Studio,NetBeans,JetBrains PhpStorm,ActiveState Komodo Edit和IDE,PHPEdit和Aptana Studio)解释松散类型语言中的变量类型和其他歧义,以及提供改进的代码完成,类型提示和调试.

例如,尝试使用像PHPStorm这样的IDE 并编写以下PHP代码:

/**
 * @param array $test
 */
function mytest($test) {
    // ... nothing here
}
Run Code Online (Sandbox Code Playgroud)

现在,当您开始输入时,myte您将获得自动完成建议mytest(test : array).正如您所看到的,$test由于上面的PHPDoc,PHPStorm知道变量的类型.