在PHP中,我注意到人们在源代码注释中添加了"@"符号。一个很好的例子是任何WordPress。当你查看来源时,你会看到类似的东西
/** Results of the last query made
*
* @since 1.0.0
* @access private
* @var array|null
*/
var $last_result
(wp-db.php,第124行)
它改变了编辑器中突出显示的语法,所以我假设它做了一些事情,但我不确定它做了什么。有人能在评论中解释一下"@"符号的作用吗?
这些是PHPDoc
注释。它们旨在通过机器解析来支持自动化文档和IDE代码完成。
前面的回答是正确的,说明源注释中的@符号是PHPDoc注释。它们还可以用于一种名为"注释"的东西,它将元数据添加到代码的某些元素中,并可以影响应用程序的行为。它在PHP中没有得到官方支持,但它已经讨论了好几年,并在Symfony、Doctrine和其他项目中使用。
通过幻灯片(与我无关)对PHP和注释的所有内容进行了出色的解释:
http://www.slideshare.net/rdohms/annotations-in-php-they-exist
注释主题的一般讨论:
http://en.wikipedia.org/wiki/Annotation
2010年关于PHP注释实现的RFC:
http://wiki.php.net/rfc/annotations
这样的注释可以用来创建一个由注释组成的文档解析器。因此,第一个@可以标识为版本,第二个可以标识为参数,依此类推
这通常用于从源代码文件自动生成文档。在这种情况下,@_用于标识有关变量的元数据。@var可以告诉文档解析器以下文本描述变量等等,而不是按顺序求值。