Dan*_*iel 12 php netbeans type-hinting
是否可以在Netbeans中使用另一个documentor标签扩展类型提示?
我正在寻找一种方法来扩展类型提示,使用一个@scope标记,允许包含的文件访问对象范围.
例:
file: template.php
<?php /* @var $this MyObject */
Run Code Online (Sandbox Code Playgroud)
这只允许对公共变量和方法进行类型提示.我希望做的是使用@scope标记扩展类型提示,允许它访问MyObject范围:
file: template.php
<?php /* @scope MyObject */
Run Code Online (Sandbox Code Playgroud)
这将使文件内容像在MyObject范围中那样运行并且$this会暗示私有方法.
现在,我没有为Netbeans平台开发的经验,但我有Java经验.如果我想完成这个,我会从哪里开始?
希望这不是一个问题的弱点.
在过去(NetBeans 的旧版本),类型提示显示类(正在使用其对象)的所有方法,即所有公共、受保护、私有甚至静态方法。现在,在 NetBeans 的新版本中,此错误已得到修复,并且当对对象进行类型提示时,仅对可访问的方法/属性进行类型提示。
这只是因为您的模板无法访问/调用类的私有属性/方法,并且如果您有一个对象(类的实例),您不应该能够访问/调用它的类的静态属性/方法。
如果您愿意在类内部进行类型提示,则同样适用 - 现在类型提示列出了$this->|(|是光标)的所有公共、受保护和私有方法,而静态属性和方法仍未列出。另一方面,如果您MyClass::|现在进行类型提示,则仅列出静态属性/方法,并且再次,当在MyClass类内部时,列出所有公共、受保护和公共属性/方法,而从外部访问私有属性/方法时(非常正确)列表中缺失。
因此,您请求的功能是错误的,并且否定了正确的封装原则。