
Bonjour à tous! Nous sommes heureux de vous présenter la troisième version majeure de PhpStorm cette année. Ajout de la prise en charge de DQL, du fixateur PHP CS, du déploiement sur plusieurs hôtes en même temps, des requêtes GitHub, du nouveau refactoring et de nombreuses autres améliorations.
Un aperçu de la version est disponible sur la page «
Quoi de neuf ». Vous pouvez y télécharger la nouvelle version ou utiliser l'
application Toolbox . Comme toujours, un essai de 30 jours est disponible. La version complète peut être utilisée par les détenteurs d'un
abonnement actif au pack PhpStorm ou All Products, ainsi que par les
étudiants et les
développeurs de projets open source.
Sous cat une revue des principales innovations. (Attention, beaucoup de photos)
Prise en charge DQL
Doctrine Query Language est un langage de requête de modèle objet qui vous permet de créer des requêtes de base de données en utilisant les noms des classes et propriétés PHP. PhpStorm 2018.3 fournit une prise en charge DQL avancée. Les entités et les propriétés fonctionnent comme de vrais liens et toutes les actions pertinentes sur celles-ci sont également disponibles: rechercher des utilisations, passer à une annonce, renommer rapidement, travailler avec des associations (relations) et bien plus encore.

Pour une chaîne régulière, vous devez ajouter une injection de langue à l'aide de l'annotation
/** @lang DQL */
. Si Nowdoc / Heredoc est utilisé, vous pouvez utiliser le marqueur DQL.
Dans les versions futures, nous prévoyons de développer le support DQL, nous serons donc très reconnaissants pour vos commentaires!
PHP 7.3
La version finale de PHP 7.3.0 est attendue dès le 6 décembre, nous avons donc implémenté à l'avance la prise en charge de toutes les nouvelles constructions dans PhpStorm:
syntaxe flexible Heredoc / Nowdoc ,
terminaison des virgules dans les appels de fonction et de méthode ,
littéraux comme première instance d'opérande et
affectation à l'aide de list () par lien .

Pour être honnête, il convient de noter que la prise en charge de PHP 7.3 est disponible dans la version précédente de 2018.2 à partir de la mise à jour 2018.2.5.
Prise en charge du fixateur PHP CS
PhpStorm avait déjà pris en charge PHP_CodeSniffer, ce qui aide à trouver les violations des règles de style de codage. Cependant, la correction manuelle de ces erreurs n'est pas si pratique. Surtout dans une grande base de code ou un projet hérité. Maintenant, avec la prise en charge de PHP CS Fixer dans PhpStorm, il vous suffit d'ajouter PHP CS Fixer en tant que dépendance dans
composer.json et d'exécuter composer installer. L'inspection appropriée dans PhpStorm s'activera automatiquement. Après cela, dans un fichier avec des violations des règles, vous pouvez exécuter la correction rapide, qui corrige immédiatement toutes les erreurs dans le fichier.

Personnalisation simplifiée d'outils de qualité
PhpStorm prend désormais en charge trois outils: PHPCS, PHPMD, PHP CS Fixer. Pour plus de commodité, nous avons combiné les paramètres de tous les outils dans
Préférences | Langage et cadres | Php | Outils de qualitéSélection automatique des normes pour PHP_CodeSniffer
En fonction des dépendances de votre
composer.json , PhpStorm détectera automatiquement les normes de codage suivantes: Symfony, Doctrine, Drupal, WordPress, Joomla!, Magento, MediaWiki, Yii 2 et CakePHP.
Nouveau refactoring
Remplacer par un aliasImaginez que vous ayez une sorte d'importation, par exemple
use Foo\Bar
. Avec le nouveau refactoring, vous pouvez entrer un alias et remplacer l'importation par, par exemple,
use Foo\Bar
comme
Baz
, tandis que toutes les occurrences de
Bar
seront remplacées automatiquement par
Baz
.

L'action inverse est également disponible -
Alias en ligne , qui supprime l'alias en excès. De plus, les alias sont désormais affichés en italique pour faciliter leur distinction visuelle des classes réelles.
Modifier la visibilité des membres de la classeEn utilisant ce refactoring, vous pouvez changer rapidement et en toute sécurité le modificateur de visibilité d'une méthode ou d'une propriété (
public / protected / private
). PhpStorm analysera l'utilisation de la méthode ou de la propriété sélectionnée et avertira s'il existe des endroits où le changement n'est pas possible et provoquera une erreur.

Déploiement sur plusieurs hôtes
PhpStorm prend en charge le déploiement sur une machine distante via FTP / SFTP / FTPS, ou dans un dossier monté. Parfois, vous devrez peut-être copier des fichiers sur de nombreux hôtes à la fois. Par exemple, si vous avez plusieurs instances de l'application ou si des parties de l'application se trouvent sur des hôtes différents. Dans PhpStorm 2018.3, nous avons ajouté des groupes de serveurs pour résoudre ce problème. Vous pouvez ajouter autant de groupes que vous le souhaitez et ajouter n'importe quel nombre d'hôtes à chacun d'eux. Après cela, lors du déploiement, sélectionnez un groupe et les fichiers seront envoyés à tous les hôtes du groupe en même temps.

Améliorations des fonctions de formatage des chaînes
Travailler avec
printf()
/
sprintf()
est devenu plus agréable grâce à la mise en évidence des espaces réservés et des valeurs de survol. PhpStorm vous avertira également si le nombre de paramètres ne correspond pas au nombre d'espaces réservés.
Soit dit en passant, en 2019, nous prévoyons de mettre en œuvre la capacité de décrire nos fonctions de formatage personnalisé. Abonnez-vous au
blog ou
Twitter @phpstorm pour suivre l'actualité.
Pulkvest GitHub
Vous pouvez maintenant afficher les demandes d'extraction GitHub sans quitter PhpStorm. Sélectionnez
VCS | Git | Affichez les demandes d'extraction et une fenêtre s'ouvre avec des listes de quêtes d'extraction de votre projet. Ici, vous pouvez créer une branche locale à partir de la demande d'extraction.

En outre, la prise en charge des sous-modules Git a été ajoutée, la possibilité d'ignorer les caractères d'espace lors de la fusion des modifications, ainsi que le téléchargement des modifications à partir de plusieurs référentiels en même temps, et bien plus encore.
Technologie Web
PhpStorm comprend
toutes les innovations et améliorations de WebStorm , notamment:
- Importations automatiques JavaScript
- La prise en charge des modèles angulaires s'est améliorée: l'auto-complétion et la navigation sont devenues plus précises
- Assistance Vuetify
- La saisie semi-automatique a été améliorée pour les applications React, et le moteur d'inspection vous avertira des composants non définis.
En savoir plus sur toutes les améliorations de l'équipe WebStorm sur le
site .
Améliorations IDE
Cherchez partoutSi vous avez besoin de trouver quelque chose, appuyez sur Shift-Shift et commencez à taper. Des onglets de recherche par classe, fichier, symbole et IDE (paramètres et actions disponibles) ont été ajoutés à la boîte de dialogue de recherche Search Everywhere mise à jour. Vous pouvez changer de zone de recherche en appuyant sur Tab.
Nouveau thème à contraste élevé pour les personnes handicapées.

Des belles petites choses:
- Commentaires TODO multiligne
- Rechercher dans la recherche multiligne sur le chemin
- Après la fermeture de PhpStorm, les noms des onglets ouverts et les répertoires de travail actuels sont maintenant enregistrés dans le terminal!
Bases de données
Comme toujours, PhpStorm inclut toutes les fonctionnalités de l'équipe DataGrip:
- Prise en charge de Cassandra (et également, à partir de 2018.2.2 et ClickHouse)
- Beaucoup d'améliorations dans l'auto-complétion
- Prise en charge des extensions PostgreSQL
- Possibilité de définir rapidement des alias de table

Autres améliorations
- Dans la fenêtre du débogueur, vous pouvez maintenant trouver rapidement une variable en commençant simplement à imprimer son nom.
- Lorsque les requêtes HTTP sont lancées, les configurations de démarrage sont automatiquement créées. Ces configurations peuvent également être créées manuellement.
- Lors du développement de tests PHPUnit, il est devenu possible de générer des méthodes de test, ainsi que des
tearDown
setUp
et tearDown
, lancées respectivement avant et après le test. - PhpStorm 2018.3 configurera automatiquement les environnements de test (PHPUnit, Codeception, Behat, PHPSpec) basés sur composer.json et les fichiers de configuration, et créera également des configurations de lancement appropriées.
C'est peut-être tout ce dont nous aimerions vous parler. Mais ce n'est pas tout ce qui était inclus dans la version. Une liste complète des modifications, comme toujours, peut être trouvée dans les très grandes
notes de version . Signalez les problèmes dans
notre tracker , ou laissez simplement vos commentaires sous cet article ou dans notre
blog .
Merci de votre attention!
Équipe JetBrains PhpStorm