2013-09-23 7 views
6

Sono nuovo a PHPStorm e voglio chiedere come posso ottenere il nome di classe completamente classificato (percorso assoluto della classe) utilizzando il completamento del codice (comando + spazio)?Come posso ottenere il nome completo della classe nel completamento del codice di PHPStorm?

Per esempio, ho una funzione nel mio codice:

<?php 

namespace A; 
use C\D\Class; 

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

Questa funzione restituisce un'istanza di \ C \ D \ Class Quando si genera docblock per questa funzione, io uso Comando + spazio per posizionare classe nome dopo @return parola chiave. PHPStorm suggerisce Class nell'elenco espanso ma quando seleziono la classe necessaria inserisce solo "Class" invece di "\ C \ D \ Class".

Come posso risolvere il problema?

Grazie in anticipo.

risposta

-1

Attualmente l'unico modo per farlo è iniziare a digitare \C\D\Cla e quindi completare. Se questo non è ciò che desideri, puoi creare un problema di usabilità allo Issue Tracker.

22

Ho avuto lo stesso problema anche. In realtà è molto semplice, ma non ho trovato l'opzione. È ben nascosto

Aprire le impostazioni e vai a:

Impostazioni IDE -> Editor -> Auto Import

Settings dialog in PhpStorm

Ci troverete la casella "Attiva importazione automatica in ambito dello spazio dei nomi". Deselezionalo e gli spazi dei nomi non si accorciano più usando la parola chiave "usa".

Ma ora PhpStorm ti dirà che non è necessario utilizzare lo spazio dei nomi completo. Per evitare che basta disabilitare l'ispezione "Nome completo non necessario".

Inspections in settings dialog in PhpStorm

si è ancora in grado di dire PhpStorm di importare lo spazio dei nomi corrente di classe. Per me è solo segnando la classe con il cursore e premendo ALT + INVIO. Poi compare questa finestra di dialogo:

Import class dialog

Quando sono confermate con ENTER lo spazio dei nomi di questa classe diventa importato e accorciare: Shorten class name

+1

isnt esso Alt + Invio? – Sri

+0

Dipende dalle impostazioni delle chiavi, immagino. È possibile che io non stia usando i valori predefiniti di phpstorm (spostati da netbeans a phpstorm) – Armin

+0

A partire dal 2017 (almeno su Mac) l'opzione può essere trovata in Editor -> Generale -> Auto Import –