rr.*_*rr. 80 php phpdoc php-ide
只是好奇是否有一种方法可以为netbeans提供常规变量的类型提示,以便intellisense选择它.我知道你可以为类属性,函数参数,返回类型等做这些,但我无法弄清楚如何为常规变量做到这一点.在你有一个可以返回不同对象类型的方法(比如服务定位器)的情况下,它会非常有用.
像这样的东西:
/**
* @var Some_Service $someService
*/
$someService = ServiceLocator::locate('someService');
Run Code Online (Sandbox Code Playgroud)
在之后使用$ someService的情况下,netbeans将提供Some_Service类中定义的所有可用方法.
joh*_*nes 177
您只需要一条线:
/* @var $varName Type_Name */
Run Code Online (Sandbox Code Playgroud)
请参阅NetBeans PHP博客中的这篇文章:https://blogs.oracle.com/netbeansphp/entry/defining_a_variable_type_in
ouc*_*cil 23
我知道这是一个较老的问题,但我正在为Eclipse/Zend Studio寻找类似的答案,这也解决了它.
**请注意,它必须在一行中以明确的方式打开和关闭...
/* @var $varName Type_Name */
Run Code Online (Sandbox Code Playgroud)
没有其他格式是否......
/**
* @var $varName Type_Name
*/
Run Code Online (Sandbox Code Playgroud)
要么...
// @var $varName Type_Name
Run Code Online (Sandbox Code Playgroud)
似乎工作.希望能帮助别人.
小智 8
你想要记录那些讨厌的魔术变量吗?(我做了;这个问题目前在谷歌排名最高.我希望这有助于某人!)
该@property标签可以让你记录魔术 PHP变量-那些使用来实现__get()和__set().标签应该在类定义之前的文档中使用:
/**
* Class Contact
* @property string $firstName
* @property string $lastName
*/
class Contact extends Model {
...
Run Code Online (Sandbox Code Playgroud)
此符号触发自动完成,在Netbeans 8.1和PhpStorm 2016.1中进行测试.
根据此错误报告, NetBeans 9中的语法将发生变化:
/* @var $variable VarType */ // vdoc1 (legacy syntax)
/** @var VarType $variable */ // vdoc (new syntax)
Run Code Online (Sandbox Code Playgroud)
另外,值得一提的是,您可以附加[]到类名来指示对象数组:
/* @var $foos Foo[] */
$foos = // ...
foreach ($foos as $foo) {
// $foo will be hinted as Foo here
}
Run Code Online (Sandbox Code Playgroud)
并且不要忘记你的use陈述,例如use Foo;