2013-09-23 86 views
6

我是PHPStorm的新手,想問問如何使用代碼完成(Command + Space)獲得完全分類的類名(類的絕對路徑)?如何在PHPStorm的代碼完成中獲得完全分類的類名?

例如,我在我的代碼功能:

<?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 \類 的一個實例,當該功能產生的docblock,我使用Command +空格來放置類@return關鍵字後的名稱。 PHPStorm在擴展列表中建議Class,但是當我選擇必需的類時,它只放置「Class」而不是「\ C \ D \ Class」。

我該如何解決?

在此先感謝。

回答

-1

目前這樣做的唯一方法是開始輸入\C\D\Cla,然後完成。如果這不是您想要在Issue Tracker上創建可用性問題的話。

22

我也有同樣的問題。其實它很簡單,但我也沒有找到選項。它隱藏得很好。

打開設置,請訪問:

IDE設置 - >編輯 - >自動導入

Settings dialog in PhpStorm

在那裏,你會發現勾選 「啓用命名空間範圍自動導入」。取消選中它,命名空間不會再使用「use」關鍵字縮短。

但現在PhpStorm會告訴你,沒有必要使用完整的命名空間。爲了避免這種情況,只需禁用檢查「不必要的完全限定名稱」。

Inspections in settings dialog in PhpStorm

你仍然能夠告訴PhpStorm導入當前類的命名空間。對我來說,只需用光標標記班級並按下ALT + ENTER即可。然後會出現這個對話框:

Import class dialog

當我進入這個類的命名空間變得進口,縮短確認: Shorten class name

+1

不是它Alt + Enter鍵? – Sri

+0

取決於您的按鍵設置,我猜。有可能我沒有使用phpstorm默認值(從netbeans轉移到phpstorm) – Armin

+0

截至2017年(至少在Mac上),該選項可以在編輯器 - >常規 - >自動導入中找到 –

相關問題