8

我是 PHPStorm 的新手,想问一下如何使用代码完成(Command+Space)获得完全分类的类名(类的绝对路径)?

例如,我的代码中有一个函数:

<?php

namespace A;
use C\D\Class;

/**
 * @return Class (what PHPStorm suggests)
 * @return \C\D\Class (what I need)
 */
function foo() {
  return new Class();
}
?>

这个函数返回一个 \C\D\Class 的实例 在为这个函数生成文档块时,我使用 Command+Space 将类名放在 @return 关键字之后。PHPStorm 在扩展列表中建议 Class,但是当我选择必要的类时,它只放置“Class”而不是“\C\D\Class”。

我该如何解决?

提前致谢。

4

2 回答 2

27

我也有同样的问题。其实这很简单,但我也没有找到选项。它隐藏得很好。

打开设置并转到:

IDE 设置 -> 编辑器 -> 自动导入

PhpStorm 中的设置对话框

在那里您会找到“在命名空间范围内启用自动导入”复选框。取消选中它,命名空间将不再使用“use”关键字缩短。

但是现在 PhpStorm 会告诉你,没有必要使用完整的命名空间。为避免这种情况,只需禁用检查“不必要的完全限定名称”。

PhpStorm 设置对话框中的检查

您仍然可以告诉 PhpStorm 导入当前类的命名空间。对我来说,它只是用光标标记班级并按 ALT+ENTER。然后出现这个对话框:

导入类对话框

当我使用 ENTER 确认时,此类的命名空间将被导入并缩短: 缩短班级名称

于 2014-03-21T09:33:04.217 回答
0

目前唯一的方法是开始输入\C\D\Cla然后完成。如果这不是您想要的,请随时在问题跟踪器上创建可用性问题。

于 2013-10-07T16:15:38.413 回答