使用PhpStorm 8在Yii应用程序中查找方法实现的问题

时间:2015-02-03 07:53:30

标签: php yii phpstorm

我使用" PHPStorm"开发了一个使用Yii 1.1的应用程序。 IDE(版本8.0.2)。虽然它设法找到基本Yii方法的声明,但它无法找到在应用程序模型中声明的方法的实现。

当我尝试点击某个功能并选择"转到...实现"在上下文菜单中,无法发现它们。

其中一个例子:

我右键点击视图中的方法实现,然后选择"转到声明"。 IDE设法正确地将我引导到模型中的方法声明。同时,当我尝试查找完全相同的方法的实现时,IDE无法找到它们。

我做错了吗?

1 个答案:

答案 0 :(得分:0)

我正在使用NetBeans,据我所知,Go to声明取决于两件事1)将框架文件添加到项目包括以防文件在外面2)转到声明将根据方式工作你定义了变量,如果有神奇的方法,它们中的一些可能根本不起作用。

但是你总是可以通过使用一些注释来声明变量的类,例如:

$post=Post::model()->find();
$post->save();

如果我点击save()可能无效,具体取决于:: model()和find()返回。但我可以在帖子中声明$ post发表评论:

/* @var $post Post */

这将让IDE知道$post属于Post类型。然后基于它将知道它扩展CActiveRecord,因此它将找到save()方法,并且声明将起作用。

始终确保:

  • 函数返回一个instanciated对象,ej:$post=Post;
  • 如果没有,至少在@return注释中指定他们返回的对象类型
  • 最后如果没有,您可以随时使用上面的评论方式