Das ist neu in PhpStorm 2019.2

Erleben Sie Hyperproduktivität mit dem zweiten umfangreichen PhpStorm-Update von 2019.

Typisierte Eigenschaften in PHP 7.4

PHP 7.4 wird für Ende November erwartet. PhpStorm beginnt frühzeitig mit der Einführung der Unterstützung, so dass Sie Zeit haben, die Migration zu planen und zu testen. Das am meisten erwartete Feature sind wahrscheinlich die neuen Typed Properties, die PhpStorm 2019.2 bereits vollständig unterstützt. Neue Inspektionen heben Typverstöße hervor, und Sie können Ihren Code mit dem Quick-Fix Add declared type for the field aktualisieren. PhpStorm erkennt den Typ automatisch anhand der PHPDoc, des Standardwerts oder der Argumenttypdeklaration in einem Konstruktor.

„On-the-fly“-Erkennung von Duplikaten

„On-the-fly“-Erkennung von Duplikaten

Wenn der gleiche Codeblock mehrmals in Ihrem Projekt vorkommt, können Änderungen zeitaufwändig sein oder sogar zu Regressionsfehlern führen, falls Sie jemals vergessen, alle Vorkommen zu aktualisieren. PhpStorm hilft, das Entstehen von Code-Duplikaten in Ihrem Code zu verhindern, indem diese on-the-fly hervorgehoben werden, damit sie leicht zu erkennen sind. Wenn Sie nun auf ein vorhandenes Duplikat stoßen oder in Ihrem Code erstellen, werden Sie es sofort bemerken! Die neue Inspektion heißt Duplicated code fragment und ist per Voreinstellung aktiviert. Sie lässt sich unter Preferences | Editor | Inspections | General konfigurieren. Die entsprechenden Einstellungen können unter Preferences | Editor | Duplicates angepasst werden. Und natürlich können Sie die Inspektion jederzeit für das gesamte Projekt (oder einen anderen Geltungsbereich) ausführen, indem Sie Code → Run Inspection by Name auswählen.

Injektion regulärer Ausdrücke

Injektion regulärer Ausdrücke

Reguläre Ausdrücke sind ein äußerst nützliches Tool zum Suchen und Ersetzen in Zeichenfolgen. In PhpStorm erhalten Sie jetzt automatische Injektionen für reguläre Ausdrücke in PHP. Dies bedeutet, dass jedes Mal, wenn in Ihrem Code preg_*-Funktionen verwendet werden, das Muster hervorgehoben und auf Richtigkeit überprüft wird. Darüber hinaus können Sie Ihre Muster jetzt direkt in der IDE testen! Bewegen Sie den Textcursor auf das Muster und drücken Sie Alt+Enter, um die Schnellaktion Check RegExp anzuzeigen.

Composer über einen Remote-PHP-Interpreter

Composer über einen Remote-PHP-Interpreter ausführen

Bisher musste ein lokaler PHP-Interpreter vorhanden sein, um Composer ausführen zu können. Das Problem dabei war, dass die lokale Umgebung oft nicht das tatsächliche Produktions-Setup widerspiegelte oder dass es möglicherweise gar keinen lokalen PHP-Interpreter gab. In PhpStorm 2019.2 können Sie einen beliebigen Remote-Interpreter auswählen, mit dem Sie Ihren Composer ausführen möchten: Docker, Vagrant, über SSH, oder einen beliebigen anderen Interpreter Ihrer Wahl!

Gehen Sie zu Preferences | Languages & Frameworks | PHP | Composer, wählen Sie Remote Interpreter aus, und wählen Sie einen Interpreter aus der Dropdown-Liste aus– oder fügen Sie einen neuen hinzu.

Intentions und Quick-Fixes

Neue Intentions für die Stringakrobatik

Neue Intentions für die Stringakrobatik

In PhpStorm gibt es mehrere Alt+Enter-Intentions, um Zeichenfolgen zu bearbeiten. 2019.2 führt eine weitere Intention ein.

Wenn Sie einen neuen Parameter in einen sprintf-Ausdruck einfügen müssen, wählen Sie ihn einfach aus, führen die Intention Extract selected string part as format function argument aus, und PhpStorm wählt die richtige Stelle für einen Parameter für Sie aus. Das funktioniert auch für Verkettungen.

Einzeilige Listen in mehrzeilige konvertieren, und zurück

Einzeilige Listen in mehrzeilige konvertieren, und zurück

Gemäß PSR-2 sollen Zeilen, die länger als 80 Zeichen sind, in mehrere aufeinanderfolgende Zeilen mit jeweils maximal 80 Zeichen aufgeteilt werden. Wenn Ihre Parameterliste oder Ihr Array also zu lang geworden ist, können Sie diese jetzt mit einem Klick aufteilen, indem Sie die neue Intention Alt+Enter Split comma-separated values into multiple lines verwenden. Eine Intention mit umgekehrter Wirkung ist ebenfalls verfügbar, falls Sie Elemente in einer Zeile zusammenfassen möchten.

Intention und Inspektionen für Switch-Anweisungen

Intention und Inspektionen für Switch-Anweisungen

Es ist jetzt möglich, Branches schneller hinzuzufügen, indem vorhandene kopiert und anschließend geändert werden. Sie können Alt+Enter über der leeren Case-Anweisung drücken und Copy ‘switch’ branch auswählen. Vergessen Sie nicht, den kopierten Branch zu ändern. PhpStorm warnt Sie, wenn ein Switch-Block einen duplizierten Branch (mit identischem Hauptteil) enthält, der entweder redundant ist oder versehentlich geschrieben worden sein kann. Wenn Sie in PhpStorm 2019.2 eine Switch-Anweisung ohne Default-Branch in Ihrem Code haben, können Sie auch dies mit Alt+Enter schnell beheben.

PHPT-Unterstützung

PHPT-Unterstützung

Mit den .phpt-Dateien können Sie auf einfache Weise funktionale Tests schreiben. Dieses Format wird zum Testen des PHP-Kerns verwendet. PhpStorm 2019.2 unterstützt .phpt-Dateien, einschließlich Hervorheben von Abschnitten und Skripten, automatische Injektion von PHP- und INI-Sprachen in entsprechende Abschnitte, Vervollständigen von Abschnittsnamen und Springen zu Dateien, auf die in EXTERNAL-Abschnitten verwiesen wird.

Docker

Services-Toolfenster

Services-Toolfenster

Docker wurde in das neue Toolfenster Services verschoben. Der Zweck dieses Toolfensters besteht darin, einen einzigen Ort zur Verfügung zu stellen, an dem alle Verbindungen und laufenden Prozesse angezeigt werden. Bisher sind in PhpStorm Docker- und Datenbankverbindungen enthalten.

Dateisystem des Docker-Containers anzeigen

Dateisystem des Docker-Containers anzeigen

Es ist jetzt möglich, das Dateisystem des laufenden Docker-Containers anzuzeigen. Das Dateisystem wird auf der neuen Registerkarte Files angezeigt.

HTTP-Client

cURL-Format im HTTP-Client

cURL-Format im HTTP-Client

Kopieren Sie einfach die cURL-Anfrage aus Ihren Browser-Entwicklungstools, der Dokumentation, dem Terminal oder einer anderen Quelle und fügen Sie sie dann einfach in die Datei .http in PhpStorm ein und sehen Sie, wie sie zu einem vollständigen Request erweitert wird! Danach können Sie mit Ihrem Request herumspielen und sich dabei auf die intelligente Vervollständigung stützen.

Beibehaltung von Cookies im HTTP-Client

Beibehaltung von Cookies im HTTP-Client

Angenommen, Sie haben eine Authentifizierungsanfrage an einen Dienst gesendet und möchten in Folgeanfragen verschiedene Endpunkte ansprechen, die zusätzliche Berechtigungen erfordern. Früher wurden die Cookies der vorangehenden Anfrage nicht gespeichert. Das hat sich jetzt geändert: PhpStorm speichert alle Cookies für Sie und übermittelt sie in den nachfolgenden Anfragen.

Web-Technologien

Wie üblich sind alle Funktionen und Verbesserungen von WebStorm auch in PhpStorm verfügbar – entweder als integrierte Funktionen oder als kostenlose Plugins, die aus dem Plugin-Marketplace heruntergeladen werden können.

Intelligente Intentions für JavaScript und TypeScript

Intelligente Intentions für JavaScript und TypeScript

Mit der neuen Intention Propagate to destructuring (Alt-Enter) können Sie eine Extra-Variable durch eine weitere Destrukturierung ersetzen. Um eine Destrukturierung vollständig zu entfernen, verwenden Sie die Intention-Aktion Replace destructuring with property or index access.

Die IDE warnt Sie jetzt, wenn ein Boolescher Ausdruck in einer Bedingung unnötige Teile enthält, und schlägt eine Vereinfachung vor.

Verbesserte Refaktorierung Rename für JavaScript

Verbesserte Refaktorierung Rename für JavaScript

Wenn Sie ein Symbol in einer JavaScript- oder TypeScript-Datei umbenennen, gruppiert die IDE jetzt dynamische Verwendungen und schließt sie standardmäßig von der Refaktorierung aus. Dies macht die Refaktorierung präziser und gibt Ihnen im Toolfenster Refactoring Preview mehr Kontrolle darüber, was genau umbenannt werden soll.

Bessere Unterstützung für Vue.js

Bessere Unterstützung für Vue.js

Verwenden Sie Vuetify oder BootstrapVue in Ihrer Vue.js-Anwendung? Dann freuen Sie sich auf eine akkuratere Vervollständigung von Komponenten und deren Eigenschaften aus diesen und anderen Vue-Komponentenbibliotheken. Möglich wurde dies durch einen neuen Ansatz bei der Nutzung dieser Bibliotheken in der IDE.

Syntaxhervorhebung für mehr als 20 Sprachen

Syntaxhervorhebung für mehr als 20 Sprachen

PhpStorm 2019.2 bietet integrierte Syntaxhervorhebung für über 20 verschiedene Programmiersprachen, einschließlich Ruby, Python, Go und anderen. Die Hervorhebung basiert auf integrierten TextMate-Bundles. Wenn Sie also eine zusätzliche Sprache benötigen, können Sie das entsprechende Bundle für diese Sprache herunterladen und in die IDE importieren.

EditorConfig

EditorConfig

PhpStorm unterstützt ab sofort und per Voreinstellung .editorconfig-Dateien! Sie können so viele davon haben, wie Sie möchten. Erstellen Sie diese in einem beliebigen Ordner, und die angegebenen Einstellungen für den Codestil werden nur auf die Dateien in diesem Ordner angewendet.

Zusätzlich zu all den Standardeigenschaften des EditorConfig-Standards können Sie jetzt auch PhpStorm-spezifische Codestiloptionen angeben. Es war nie einfacher, gemeinsame Codestil-Standards für das gesamte Team festzulegen.

Shell-Skripte

Shell-Skript-Unterstützung

Dieses Release bietet umfangreiche Möglichkeiten zur Bearbeitung von Shell-Skripten, einschließlich Wort- und Pfadvervollständigung, Schnelldokumentation und sogar die Rename-Refaktorierung. Sie können auch Run-Konfigurationen zum Ausführen von Shell-Skripten erstellen.

Wir haben zahlreiche externe Tools in PhpStorm integriert, um eine noch weiter reichende Unterstützung von Shell-Skripten zu ermöglichen. Von jetzt an können Sie Shellcheck verwenden, um Fehler in Ihrem Skript zu erkennen und zu korrigieren, mvdan/sh, um Ihr Shell-Skript ordentlich zu formatieren, und Explainshell, um die vollständige Beschreibung eines Befehls durch Drücken von Alt+Enter anzuzeigen.

Versionsverwaltung

Automatische Berücksichtigung von Ignore-Dateien

Sie können der Liste der ignorierten Dateien jetzt sowohl aus dem Projektbaum als auch von der Registerkarte Local Changes im VCS-Toolfenster Dateien hinzufügen. Falls Sie stattdessen lieber die .gitignore-Datei bearbeiten möchten, können Sie die Pfadvervollständigung im Editor verwenden.

Neuer Commit-Flow ohne Dialogfenster

Neuer Commit-Flow ohne Dialogfenster

PhpStorm 2019.2 hält eine wichtige Änderung für Projekte bereit, die Git oder Mercurial verwenden. Jetzt können Sie Commits für Dateien auf der Registerkarte "Local Changes" des Toolfensters "Version Control" durchführen. Hier können Sie die bearbeiteten Dateien ansehen und bei Bedarf Änderungen vornehmen, da der Rest der IDE nicht durch den Commit-Dialog blockiert wird. Aktivieren Sie diese Änderung über das Kontrollkästchen "Commit from the Local Changes without showing a dialog" unter Preferences | Version Control | Commit Dialog.

Erinnerung an vergessene Dateien

Erinnerung an vergessene Dateien

Wenn Sie einen Commit für Dateien durchführen und PhpStorm 2019.2 feststellt, dass auch andere Dateien geändert wurden, die Sie häufig zusammen mit den aktuellen in einem Commit zusammenfassen, dann werden Sie von der IDE darauf aufmerksam gemacht, damit Sie nichts übersehen.

Anpassen der Registerkarte VCS Log

Anpassen der Registerkarte VCS Log

Jetzt können Sie auswählen, welche Spalten im Toolfenster "Version Control" auf der Registerkarte "Log" angezeigt werden sollen. Klicken Sie auf das Augensymbol, wählen Sie "Show Columns" aus und wählen Sie dann die anzuzeigenden Spalten aus: Autor, Datum oder Commit-Hash.

Datenbank-Tools

Volltextsuche liefert umfassende Ergebnisse

Volltextsuche liefert umfassende Ergebnisse

Jetzt können Sie sogar dann nach Daten suchen, wenn Sie nicht genau wissen, wo sich diese befinden. Klicken Sie mit der rechten Maustaste auf die Datenquelle oder eine Gruppe von Datenquellen, die Sie durchsuchen möchten, und wählen Sie "Full-text Search" aus, oder drücken Sie Strg/Cmd+Alt+Shift+F.

Die Ergebnisse werden so gefiltert, dass sie nur Strings anzeigen, in denen die Daten gefunden wurden. Wenn Sie die Daten wegen zu vieler Spalten nicht finden können, verwenden Sie die Textsuche im Dateneditor: Strg/Cmd+F.

Filtern nach Datenquelle in Suche und Navigation

Filtern nach Datenquelle in Suche und Navigation

Das Auffinden von Objekten im GoTo-Pop-up ist nicht immer einfach, da es dort häufig zu viele ähnliche Elemente gibt. In PhpStorm 2019.2 können Sie auswählen, wo gesucht werden soll: in einer bestimmten Datenquelle oder in einer Gruppe von Quellen. Dasselbe gilt auch für "Find In Path". Dies ist ungemein nützlich, wenn Sie in DDLs oder anderen Objekten nach Quellcode suchen.