我(最后)已经阅读了PEAR(php)编码标准。
这样评论的目的是什么:
/**
* Here is my comment
* I Wrote this in a haiku
* But why put the stars?
*/
与此相反:
/*
Here is a comment
No haiku or
anything special, but it still works!
*/
/** stuff */
文档也称为DocBlock表示法。
它用于记录PHP函数,类等。
/**
* A test function
*
* @param foo $bar
* @return baz
*/
function test(foo $bar) { return new baz; }
一些编辑很好地利用它来执行他们的Code Insight功能,这是一个非常强大的工具,可以减少您花在查看旧函数声明上的时间。 Aptana和Zend Studio有这个功能,也可能是其他功能。
您还可以将它与Reflection结合使用来执行某种AOP,在声明之上对DocBlock进行运行时检查。实际上,Doctrine使用它来为他们的“Active Record”实现构建一个object attribute map。
某些文档系统有时会使用双星号注释。文档系统将处理该块并查找某些关键字,如@author或@var。
单个星号注释将被视为//注释。
我同意ajon和Quentin。主要是它的可读性。但是,还有一件事。
有自动文档生成器(如doxygen)。
它们需要一些特定的注释格式才能将这些注释包含在文档中我相信这种评论风格完全用于此目的(请参阅以下doxygen文档页面 - http://www.doxygen.nl/manual/docblocks.html)
可读性。
它清楚地突出了人们阅读代码的注释部分。
我认为这主要是为了外观/可读性。想象一下,你有一个很长的评论部分,超出了一个屏幕。然后看到这些星号让你知道它是评论的一部分,即使你看不到开头和结尾。
如果您使用优秀的自由文本编辑器jEdit来编辑PHP,它会突出显示不同颜色的代码,以显示什么是动词,什么是变量等。
如果用/ * ... *注释掉一个块,那么块内的所有内容都会变成橙色,这使得难以读取代码。
如果您用/ ** ... * /来注释它,那么它会将块中的所有内容更改为仍然突出显示代码的不同部分的不同颜色集,这意味着代码仍然非常易读。
PS。如果您使用记事本或类似编辑PHP代码,那么我强烈建议您获得jEdit。它将为您节省大量时间和挫折感。像自动指示{},()等的开始和结束的事情。