关于phpstorm 方法跳转实现

问题咨询 · Axin · 于 5年前 发布 · 7085 次阅读

步骤

反正目前我是这么做到函数跳转的,想问问大家是否有更好的办法

项目根目录新建ide_helper.php,示例如下:

<?php
/**
 * phpstorm yii2-fecshop ide helper
 */


class Yii
{
    /**
     * @var FecshopApplication
     */
    public static $app;

    /**
     * @var FecshopService
     */
    public static $service;
}

/**
 * Class FecshopApplication
 */
class FecshopApplication
{

}

/**
 * Class FecshopService
 */
class FecshopService
{

}

比如我们要加上极光推送

<?php
/**
 * phpstorm yii2-fecshop ide helper
 */


class Yii
{
    /**
     * @var FecshopApplication
     */
    public static $app;

    /**
     * @var FecshopService
     */
    public static $service;
}

/**
 * Class FecshopApplication
 * (加上如下一句)
 * @property \JPush\Client $jpush jpush service
 */
class FecshopApplication
{

}

/**
 * Class FecshopService
 */
class FecshopService
{

}

本文由 Axin 创作,采用 知识共享署名 3.0 中国大陆许可协议 进行许可。 可自由转载、引用,但需署名作者且注明文章出处。

共收到 4 条回复 问题提问
Fecmall#15年前 0 个赞

做了一些这方面的

https://github.com/fecshop/yii2_fecshop/blob/master/services/Cart.php#L18

因为fecshop是通过配置的方式进行的,因此 Yii::$service->cart 不在运行的时候,不知道加载的是那个配置,会造成误解,因此这块不是很好弄。

Axin#25年前 0 个赞

@Fecshop #1楼 恩,升级1.7时看到了有做这种注释,因为开发中一般都是用phpstorm,如果没有函数跳转,还是蛮恶心人的,调试费时。

Axin#34年前 0 个赞

这里会有个问题,如果出现覆写,那么上面的代码跳转等于渣渣。没有跳转功能,开发太累人

Fecmall#44年前 0 个赞

嗯,是这样,services只有再运行的时候才知道是哪里的文件

对于架构,services是非常必要的,但是没有想到更改好的办法找到文件跳转

比较好的是,services的名称和文件对应起来,找文件比较好找。

添加回复 (需要登录)
需要 登录 后方可回复, 如果你还没有账号请点击这里 注册
Your Site Analytics