在@param注释中包含类的命名空间是一种好习惯吗?我知道phpdoc不支持命名空间,但是phpdox或Doxygen等其他工具会如何起作用?
哪种方式更好/更常见?
namespace foo\someNamespace;
use foo\someOtherNamespace\MyOtherClass;
--- with namespace ---
/**
* @param \foo\someOtherNamespace\MyOtherClass $otherClass
*/
class myClass(MyOtherClass $otherClass)
{
// do something
}
--- without namespace ---
/**
* @param MyOtherClass $otherClass
*/
class myClass(MyOtherClass $otherClass)
{
// do something
}
答案 0 :(得分:1)
命名空间是类的完整名称的一部分。因此,如果您不将名称空间添加到@param中的类名,则会给出错误的类型。
我个人认为名称空间很快就会成为PHP组织类的主要标准。所以文档工具都必须使用它们。