PhpStorm 2022.1 ist eine neue Hauptversion, die Unterstützung für mehrzeilige und verschachtelte Array-Shapes, ein In-Place-Refactoring für das Extrahieren von Methoden, eine verbesserte Unterstützung für Blade-Templates, WordPress und PHP-Generics und noch einiges mehr bietet.
Array-Shapes in PHPDoc-Blöcken wird seit PhpStorm 2021.2 unterstützt. Es wurden jedoch nur einzeilige und unverschachtelte Annotationen unterstützt.
PhpStorm 2022.1 schafft jetzt Abhilfe: Mehrzeilige und verschachtelte Array-Shapes werden jetzt sowohl in PHPDoc-Annotationen als auch in #[ArrayShape]-Attributen vollständig unterstützt!
Das Hinzufügen von Array-Shape-Annotationen ermöglicht Code-Completion für die Schlüssel sowie die Erkennung von Wertetypen bei einfachen Array-Datenstrukturen oder objektartigen Arrays. Sie können in PhpStorm sowohl die PHPDoc- als auch die Attribut-Syntax verwenden, je nachdem, was Sie bevorzugen. Die Syntax wird für Rückgabetypen und Parametertypen unterstützt.
Extract Method gehört zu den meistverwendeten Refactorings in PhpStorm. Um Ihren Code zu vereinfachen und eine neue Methode zu erstellen, markieren Sie einfach den entsprechenden Codeabschnitt und drücken Sie ⌘⌥M (Cmd+Alt+M / Strg+Alt+M).
Bisher wurde dadurch ein Dialog geöffnet, in dem das Refactoring konfiguriert werden konnte. Niemand mag jedoch Popups, und jetzt können Sie in vielen Fällen zum Extrahieren einer Methode einfach das In-Place-Refactoring verwenden.
Es wird kein Dialog angezeigt, und die neue Methode (oder Funktion) wird sofort im Editor erstellt. Der Cursor wird so platziert, dass Sie den Namen der neuen Methode bearbeiten können.
Bisher behandelte PhpStorm jeden Codeblock in Blade Templates als eigenständigen Gültigkeitsbereich. Dies führte häufig zu Problemen bei der Code-Completion und mit Code-Insights.
In PhpStorm 2022.1 haben wir den Umgang mit Blade-Templates erheblich überarbeitet. Dadurch erhalten Sie eine deutlich verbesserte Code-Completion in .blade.php
-Dateien.
Wir haben außerdem viele weitere Probleme behoben, die in Blade-Templates die Code-Completion und die Formatierung betrafen. Mehr erfahren.
In PhpStorm können Sie mit gedrückter ⌘/Strg-Taste auf einen Dateipfad klicken, um die entsprechende Datei im Editor zu öffnen. Das hat bei dynamischen Pfaden in WordPress-Code nicht funktioniert, wenn der Pfad mit WordPress-Funktionen generiert wurde.
In dieser Version unterstützen wir die Funktion get_template_directory_uri()
in Pfaden. Die Unterstützung wird in den nächsten Updates auf weitere Funktionen erweitert.
Das Hook-System von WordPress ist sehr leistungsfähig, aber bisher es war nicht möglich, vom Aufruf eines Hooks zur Deklaration des Handlers zu springen.
Jetzt finden Sie links neben den Aufrufen ein entsprechendes Randleistensymbol. Klicken Sie darauf, um die Liste der Hook-Verwendungen anzuzeigen, einschließlich der Registrierung und anderer Aufrufe.
Wie Sie vielleicht wissen, nutzt PhpStorm nicht nur die integrierten Codeanalysefunktionen, sondern greift auch auf externe Informationen über den Code zu. Diese Informationen holt sich die IDE aus der Datei .phpstorm.meta.php. Sie können diese Datei verwenden, um PhpStorm mehr Informationen über Ihren Codebestand zu geben und dadurch eine bessere Completion zu erhalten.
Bei Verwendung der magischen Methoden _call
oder _callStatic
mussten sie bisher auf die Code-Completion für die Methoden verzichten, da sie nicht definiert sind.
In dieser Version können Sie den entsprechenden Metadateneintrag hinzufügen, um Auto-Completion für solche Aufrufe zu erhalten.
Sie haben sogar die Möglichkeit, dynamische Aufrufe automatisch zu verarbeiten, indem Sie aus einem Parameterwert einen Methodennamen beziehen.
Sie können Union-Typen jetzt als @|MyClass
in .phpstorm.meta.php angeben – dies kann die Programmierunterstützung für Mocks verbessern.
Weitere Informationen zu anderen Metadaten-Features finden Sie in der Dokumentation.
Wir haben die Unterstützung von PhpStorm für annotationsbasierte Generics weiter verbessert. Diese Version berücksichtigt einige weitere Fälle, zum Beispiel:
@psalm-import-type
, @phpstan-import-type
@psalm-trace
, @phpstan-trace
@method
-Tags Jetzt können Sie bei der Erstellung eines neuen, leeren Projekts automatisch eine composer.json
-Datei für das Projekt generieren und die benötigten Abhängigkeiten bereitstellen. Nachdem das Projekt erstellt wurde, fordert PhpStorm Sie auf, die Abhängigkeiten zu installieren.
Wir haben das Event Log durch das neue Toolfenster Notifications ersetzt. Dies verbessert den Überblick über die IDE-Benachrichtigungen und verringert die Gefahr, wichtige Informationen zu verpassen. Standardmäßig befindet sich das neue Toolfenster in der rechten unteren Ecke des IDE-Fensters. Alle Benachrichtigungen gehören einer von zwei Kategorien an: Suggestions (Empfehlungen) und Timeline (Zeitleiste).
Sie können die Funktion Structural Search and Replace im Hauptmenü unter Edit | Find | Search Structurally… aufrufen.
Der Dialog Structural Search and Replace wurde überarbeitet und enthält jetzt eine Liste aller Vorlagen, um die Navigation zwischen ihnen zu vereinfachen.
Wir haben auch ein Anheften-Symbol in der oberen rechten Ecke des Dialogs Structural Search and Replace hinzugefügt.
Jetzt haben Sie die Möglichkeit, den Arbeitsbereich so auf die Editor-Tabs aufzuteilen, dass diese die gleiche Breite haben. Aktivieren Sie dazu die Option Settings / Preferences | Advanced Settings | Editor Tabs | Equalize proportions in nested splits.
UML-Diagramme können jetzt in den Formaten yEd (.graphml), JGraph (.drawio), Graphviz (.dot), Mermaid (.md), Plantuml und IntelliJ IDEA (.uml) exportiert werden, um die Kompatibilität mit Drittanbieter-Tools zu gewährleisten.
README-Dateien beschreiben oft die Schritte, die für die Ausführung einer Anwendung erforderlich sind, und listen dabei die Befehle auf, die Sie ausführen müssen. Mit PhpStorm 2022.1 können Sie diese Befehle direkt aus der Markdown-Datei heraus ausführen. Klicken Sie einfach auf das Ausführen-Symbol in der Randleiste links neben dem Befehl.
Wir haben außerdem eine neue Aktion Copy code snippet für Markdown-Blöcke hinzugefügt, mit der Sie den Inhalt des Blocks mit einem Klick in die Zwischenablage kopieren können.
Um das Formatieren von Markdown-Dateien zu erleichtern, haben wir die schwebende Symbolleiste überarbeitet, die angezeigt wird, wenn Sie einen Textabschnitt auswählen. Neben dem neuen Design ermöglicht die Symbolleiste jetzt auch die Erstellung von Listen und bietet ein Auswahlmenü für Überschriftenstile.
Die Symbolleiste kann angepasst werden, sodass Sie die Optionen aufnehmen können, die Sie benötigen. Die entsprechende Einstellung finden Sie unter Settings / Preferences | Appearance & Behavior | Menus and Toolbars | Markdown Editor Floating Toolbar.
Wir haben die Funktionalität von Annotate with Git Blame verbessert, um die Untersuchung von Änderungen zu erleichtern. Die IDE färbt den Unterschied in den Zeilen direkt im Editor ein, wenn sich die Maus über einer Annotation befindet, und beim Anklicken wird das Toolfenster Git Log geöffnet.
PhpStorm erleichtert Ihnen das Arbeiten mit Änderungsvorschlägen, da Sie Änderungen jetzt direkt in der IDE lokal anwenden oder als Commit festschreiben können.
Der Fensterbereich Commit Details bietet jetzt Informationen zu GPG-Signaturen und Build-Status. Zuvor wurden diese Daten nur als Spalte im Git-Log angezeigt.
Die neue Bedienoberfläche für das Toolfenster Git File History ist jetzt unabhängig vom Indizierungsprozess. Die Daten werden in einer neuen Oberfläche dargestellt, auch wenn der Logindex ausgeschaltet ist.
Dies waren die wichtigsten Neuerungen in diesem Release. Wenn Sie einen genaueren Blick auf die Details und auf weitere coole Verbesserungen werfen möchten, lesen Sie bitte die Release-Ankündigung im PhpStorm-Blog.