【发布时间】:2012-02-17 22:15:17
【问题描述】:
出于易于维护和 IDE 类自动完成和成员提示的原因,我在我的项目中使用了 PHPDoc。给定这个示例类:
class my_class {
public $id;
public $name;
public $number;
public function __construct() {
//Do something
}
public function Rename($name) {
$this->name = $name;
}
}
我更愿意用类文档本身(位于类声明之上)记录所有属性($id、$name 和$number),然后将方法文档(如有必要)放在每个方法之上。这是我最终希望我的班级看起来像这样:
/**
* Represents an example class for Stackoverflow
*
* @property int $id The id of the object
* @property string $name The name of the object
* @property int $number The number of the object
*/
class my_class {
public $id;
public $name;
public $number;
public function __construct() {
//Do something
}
/**
* Renames the object
* @param string $name Name to rename object
*/
public function Rename($name) {
$this->name = $name;
}
}
这正是我喜欢的文档,但是 Netbeans 的自动完成功能无法正确运行,因为它列出了每个属性两次。例如,如果我开始输入 $my_class_object->i,自动完成将列出两个 $id 属性:一个在我的 PHPDoc 中描述,另一个被描述为“未找到 PHPDoc”的未知变量。
有一个解决方案可以解决 Netbeans 问题 - 在每个属性上方添加一个 @var PHPDoc 块,但是我认为它不必要地弄乱了我的课程,尤其是我的一些具有 10 多个属性的课程。
对于我的两个问题(干净的文档、正确的 Netbeans 提示)是否有 [好的] 解决方案,还是我的处理不正确?
【问题讨论】:
标签: php netbeans phpdoc netbeans-7