平时使用的时候,虽然自己写的组件加入了config的components中,但是IDE并不会自己提示,这很不爽呢。所以这篇文章是解决IDE自动提示自定义组件。

首先在根目录新建个php文件,名字随意,这里就叫_ide_helper.php把,之前看到有篇教程有写,拷贝之后一直没开过了,现在找不到出处,改天找到后补上文章内。

然后填入下面内容保存即可。

<?php
exit();

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

/**
 * @property \backend\components\Tools  $tools
 * @property \yii\redis\Connection  $redis
 */
class PhpstormApplication
{
}

这个@property \backend\components\Tools  $tools就是自己定义的components,前面@property关键字让IDE正确识别,中间跟着类所在的位置(psr-4),后面的$tools就是提示的变量,可能描述不太清楚,实际来操作一下就知道了。

这时候在yii里就可以直接使用Yii::$app->tools了,他会自动提示,当然config里的components也得写tools否则实际使用的时候会报错。

由此可以看出@property \backend\components\Tools  $tools里的$tools就是Yii::$app->tools里提示的关键。尝试改成tool,那么IDE会自动提示tool,不会提示tools了。当然,如果要这么做的话记得config里也得改改!!

就写到这里好了。以后自己复制也方便多了


话说最近腾讯云有点猛,价格很低啊,我好心动。留个自己的连接给大家点过去看看。这只企鹅有点猛