2013-09-23 2 views
6

Ich bin neu in PHPStorm und möchte fragen, wie kann ich vollständig klassifizierten Klassennamen (absoluten Pfad zu der Klasse) mit Code Completion (Command + Space) bekommen?Wie kann ich den vollständig klassifizierten Klassennamen in PHPStorms Code Completion erhalten?

Zum Beispiel habe ich eine Funktion in meinem Code:

<?php 

namespace A; 
use C\D\Class; 

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

Diese Funktion eine Instanz von \ C \ D \ Class gibt Wenn Docblock für diese Funktion zu erzeugen, verwende ich Befehl + Leer Klasse zu platzieren Name nach @ return Schlüsselwort. PHPStorm schlägt die Klasse in der erweiterten Liste vor, aber wenn ich die notwendige Klasse auswähle, wird nur "Klasse" statt "\ C \ D \ Klasse" platziert.

Wie kann ich es beheben?

Vielen Dank im Voraus.

Antwort

-1

Momentan können Sie nur \C\D\Cla eingeben und dann abschließen. Wenn dies nicht das ist, was Sie möchten, können Sie ein Usability-Problem unter Issue Tracker erstellen.

22

Ich hatte das gleiche Problem auch. Eigentlich ist es sehr einfach, aber ich habe auch die Option nicht gefunden. Es ist gut versteckt.

Öffnen Sie die Einstellungen und gehen Sie zu:

IDE Einstellungen -> Editor -> Auto Import

Settings dialog in PhpStorm

Dort finden Sie das Kontrollkästchen finden "Enable Auto-Import im Namensraum scope". Deaktivieren Sie es, und Namespaces werden nicht mehr mit dem Schlüsselwort "use" gekürzt.

Aber jetzt wird PhpStorm Ihnen sagen, dass es nicht notwendig ist, den vollständigen Namespace zu verwenden. Um dies zu vermeiden, deaktivieren Sie einfach die Inspektion "Unnötiger vollständig qualifizierter Name".

Inspections in settings dialog in PhpStorm

Sie sind noch in der Lage PhpStorm zu sagen, die aktuelle Klasse Namensraum zu importieren. Für mich markiert es gerade die Klasse mit dem Cursor und drückt ALT + ENTER. Dann ist dieser Dialog erscheint:

Import class dialog

Wenn ich mit ENTER, um den Namensraum dieser Klasse bestätigen wird importiert und verkürzen: Shorten class name

+1

nicht wahr alt + eingeben? – Sri

+0

Hängt von Ihren Schlüsseleinstellungen ab, denke ich. Es ist möglich, dass ich die phpstorm Standardeinstellungen nicht verwende (von netbeans zu phpstorm) – Armin

+0

Ab 2017 (zumindest auf Mac) kann die Option in Editor -> Allgemein -> Auto Import gefunden werden –

Verwandte Themen