我是个新手,我刚刚开始使用NetBeans来开发我的PHP代码。
突然,当我在查询中输入变量时,弹出一个对话框,要求我完成注释以保存变量类型。我做了一些调查,发现这似乎是NetBeans的一个流行特性,但我找不到任何信息来解释为什么会这样。
为什么有人要把PHP变量的类型放在注释中?它是用于开发用途,还是实际上对代码本身有好处?它是完整的,还是可选的?
发布于 2011-10-23 01:42:30
我猜你说的是这样的东西:
/**
* @var SimpleXMLElement $xml
*/
private $xml;
这就是所谓的phpDoc comment。它允许您生成接口文档(like this one for instance)。此外,包括Eclipse和NetBeans在内的大多数IDE也支持该语法,并提供动态代码完成等功能。
发布于 2012-05-18 20:52:12
尽管netbeans将其用于自动补全,但它通常对记录代码很有用:
在本例中,您知道此方法获得了什么以及它返回了什么,但在代码内部,您不知道发生了什么
/**
* Returns some stuff
* @param string $someObj
* @return array
*/
public function someMethod($someObj) {
$factoredObj = getObject($someObj); //you are not sure what type it returns
$resultArray = $factoredObj->toArray();
return $resultArray;
}
可以在代码中使用/* @var $variable type */
对其进行注释
/**
* Returns some stuff
* @param string $someObj
* @return array
*/
public function someMethod($someObj) {
/* @var $factoredObj someType */
$factoredObj = getObject($someObj);
$resultArray = $factoredObj->toArray();
return $resultArray;
}
或
$factoredObj = getObject($someObj); /* @var $factoredObj someType */
发布于 2011-10-23 01:40:25
因为PHP是一种松散/鸭型语言,当您创建一个大型程序时,这些类型提示可以帮助您或其他人在出现问题时了解所发生的事情。例如,期望一个混合类型并发送一个整数。
https://stackoverflow.com/questions/7861375
复制相似问题