微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

有没有办法告诉PHPStorm隐藏方法/函数/变量/等

我正在寻找一种让 PHPStorm隐藏代码完成方法方法.我试图用@access私有注释DocBlocks,但这并没有将它们隐藏起来.

有没有办法隐藏私有API,缺少编写/生成具有有限接口的存根文件并在我的项目中引用它?

例如:

让我们说图书馆里面有这个:

<?PHP


interface IDoABunchOfStuff
{
    /**
     * My library users use this
     */
    public function doFoo();

    /**
     * My Library needs this but requires that my users don't see it.
     *
     * @access private
     * @visibility none
     * @package mylib
     * @internal
     */
    public function dobar();

}

class Foo extends Something implements IDoABunchOfStuff
{
    /**
     * does foo
     */
    public function doFoo()
    {
        // ...
    }

    /**
     * does bar. for internal use only
     *
     * @access private
     * @visibility none
     * @package mylib
     * @internal
     */
    public function _dobar()
    {
        // ...
    }
}@H_502_16@ 
 

我的图书馆用户输入:

<?PHP

myAwesomeFunction(IDoABunchOfStuff $aFoo)
{
    if($->$oFoo->[CTRL+SPACE] // invoking code completion...@H_502_16@ 
 

是否有可能(以及如果我是如何)使它成为我的用户永远不会看到_dobar?

我尝试过的两种不同的注释似乎都没有达到预期的效果.

附:我正在使用PHPStorm 4.0.3

额外:

在这种情况下,我正在实现ArrayAccess,我不希望offsetGet,offsetSet,offsetExists和offsetUnset混乱我的代码完成窗口,但我在其他地方有类似的问题,足以保证提出一个更普遍的问题.

解决方法

不 – 你不能在当前版本的PHPStorm中做这样的事情.

问题跟踪器上有一个建议使用@access标记用于此目的,但目前没有安排为任何特定版本实施:http://youtrack.jetbrains.com/issue/WI-5788

随意投票/评论/等等,也许它会更快实施.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐