Maison >développement back-end >tutoriel php >PHP : évitez la partie ennuyeuse et appuyez sur Tab !

PHP : évitez la partie ennuyeuse et appuyez sur Tab !

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-12-21 19:41:14715parcourir

Phpstorm est un IDE fantastique pour les développeurs PHP. Bien que ce ne soit pas gratuit, vous bénéficiez de fonctionnalités plutôt intéressantes, telles que les Live Templates.

? Tapez avant et tabulation

Les

Live Templates sont des extensions personnalisables pour votre éditeur.

PhpStorm propose déjà des extensions utiles pour divers contextes, y compris PHP, par défaut.

Vous pouvez le vérifier dans Paramètres > Éditeur > Modèles en direct :

PHP: Skip the boring part & press Tab!

fore supprime les tracas liés à la saisie manuelle des boucles foreach.

Si vous tapez f, fo ou for, vous pouvez apparaître avant dans la liste, mais assurez-vous de sélectionner avant et non foreach, ce qui ne fera pas de magie ici :

PHP: Skip the boring part & press Tab!

La saisie préalable est un peu plus longue mais plus sûre pour obtenir le modèle souhaité. Il doit également avoir une description (foreach iterable_expr as $value).

Le Live Template permet de personnaliser facilement le nom des variables :

PHP: Skip the boring part & press Tab!

Ensuite, appuyez simplement sur ⇥Tab pour développer tout le bloc foreach.

N.B. : J'utilise la souris dans la démo mais l'idée est de s'en tenir au clavier.

? Les modèles dynamiques sont contextuels

Le contexte permet une meilleure organisation et réduit le bruit dans l'éditeur.

Par exemple, vous n'avez pas besoin de l'avant-développement pour modifier des fichiers HTML.

C'est pourquoi ce modèle en direct n'est applicable qu'à PHP :

PHP: Skip the boring part & press Tab!

Vous pouvez créer des groupes de modèles personnalisés, appliquer un modèle dynamique à un ou plusieurs groupes et définir des variables personnalisées pour contrôler le rendu.

Vous pouvez même définir comment développer le modèle avec le clavier (par exemple, tabulation, entrée ou espace).

☄️ Profitez des modèles par défaut

Au lieu de taper encore et encore les mêmes constructions :

public static function ()
{

}

Tapez simplement pu ou pub, sélectionnez le modèle pubsf Live et appuyez sur ⇥Tab :

PHP: Skip the boring part & press Tab!

Source : Documentation officielle - Modèles en direct

?️ Développer la personnalisation

Vous pouvez créer des modèles Live personnalisés pour répondre à vos besoins.

Allez dans Paramètres > Éditeur > Modèles Live, sélectionnez le groupe de modèles PHP et appuyez sur le bouton pour ajouter un nouveau modèle Live :

PHP: Skip the boring part & press Tab!

Vous obtiendrez quelque chose comme ce qui suit :

PHP: Skip the boring part & press Tab!

Faites particulièrement attention à la case à cocher appelée contexte applicable (ici, « Déclaration PHP »).

Si vous ne voyez pas votre modèle en direct dans l'éditeur, c'est probablement parce que vous avez oublié de configurer quelque chose ou que votre cas ne correspond à aucun des éléments cochés.

Vous bénéficiez d'une granularité avancée avec ce paramètre, alors modifiez le contexte applicable en conséquence pour que votre expansion fonctionne.

? Bonjour tout le monde : ajoutez votre premier modèle

Ajoutons un modèle dynamique pour ajouter l'attribut override (PHP 8.3), qui est censé déclencher une erreur si une méthode remplace explicitement son parent alors que la classe parent n'a pas (plus) cette méthode :

PHP: Skip the boring part & press Tab!

Maintenant, lorsque vous tapez dans votre éditeur, vous obtenez l'attribut override, ce qui vous évite d'avoir à l'écrire manuellement.

PhpStorm l'enregistre en utilisant XML :

public static function ()
{

}

Tirer parti des variables prédéfinies

Bien qu'il ne s'agisse pas d'une liste exhaustive, ces variables prédéfinies sont importantes :

Variable Description
$END$ Caret position after editing variables
$SELECTION$ Denotes the code fragment to be wrapped in surround templates
$RETURN_TYPE$ Return type of the function or method

Source : documentation - variables prédéfinies

$SELECTION$ est destiné à des usages plus avancés. Il est nécessaire pour créer des modèles surround :

public static function ()
{

}

N.B. : Merci de lire la documentation pour configurer correctement votre modèle surround (vous devez éditer les variables).

Ajoutez vos propres variables

Vous vous souvenez de la variable $item que nous venons de voir ?

PHP: Skip the boring part & press Tab!

Plutôt pratique de modifier le nom à la volée, n'est-ce pas ?

Pour comprendre comment cela fonctionne, modifiez simplement les variables du modèle et vérifiez l'expression associée :

PHP: Skip the boring part & press Tab!

Les expressions intégrées permettent une personnalisation assez avancée, telle que la saisie semi-automatique intelligente, la suggestion de nom et même des expressions régulières.

Dupliquer les modèles existants

Vous pouvez cliquer avec le bouton droit sur n’importe quel modèle Live dans la liste pour le copier. Si vous inspectez le presse-papiers, vous verrez quelque chose de similaire au XML suivant :

<template name="over" value="#[\Override]" description="add override attribute" toReformat="true" toShortenFQNames="true">
  <context>
    <option name="PHP" value="true" />
  </context>
</template>

Il peut être utile de démarrer un nouveau Live Template à partir d'un modèle existant.

Cependant, vous préférez utiliser le bouton dupliquer (à droite du bouton supprimer "-") dans ce cas :

PHP: Skip the boring part & press Tab!

? Partagez vos modèles

PhpStorm stocke les modèles Live sous forme de fichiers XML dans le répertoire des modèles du répertoire de configuration de l'IDE : voir idea.config.path.

Le copier-coller peut convenir, mais vous souhaiterez peut-être plutôt synchroniser ces extraits. Par exemple, si vous maintenez et partagez des modèles communs pour tous les membres de l'équipe.

Vous pouvez également exporter et importer manuellement tous les modèles en direct.

N.B. : Veuillez lire cette section pour la configuration.

? Je n'ai pas besoin de ça. J'ai l'IA.

Vous pouvez utiliser des outils d'IA ou activer l'assistant JetBrain AI (plugin), afin que l'EDI puisse faire des prédictions en fonction de votre utilisation.

Veuillez cependant lire la politique de confidentialité avant toute chose :

Le service JetBrains AI peut collecter deux types de données liées à l'utilisation des fonctionnalités d'IA : des données comportementales et détaillées. Ces deux types de collecte de données sont entièrement contrôlés par l'utilisateur.

Les données du service JetBrains AI sont envoyées à des fournisseurs de modèles linguistiques tiers

Je comprends totalement le battage médiatique autour de l'IA, et elle fait un excellent travail avec les tâches répétitives.

D'après mon expérience jusqu'à présent, les modèles en direct sont cependant plus cohérents et ne sont pas sujets aux hallucinations.

Notez que cela ne signifie pas que vous ne pouvez pas combiner ces outils, mais veuillez revérifier les suggestions de l'IA avant d'appuyer sur ⇥Tab.

? Soyez créatif

Voici quelques cas d'utilisation des modèles dynamiques (PHP) :

  • boucles et constructions communes dans différents langages
  • blocs surround (par exemple, try/catch personnalisé)
  • passe-partout pour le fournisseur de données (PHPUnit)
  • passe-partout pour les méthodes de test
  • phpdoc contenant des mots-clés spécifiques (par exemple, @test, @dataprovider)

✅ Avantages

  • hautement personnalisable (focus sur le domaine)
  • épargnez littéralement des dizaines de clics
  • Les modèles Live par défaut sont rock !
  • ne s'applique qu'à des contextes spécifiques (groupes de modèles)

❌ Inconvénients

  • la syntaxe pour écrire des variables peut être compliquée, en particulier dans les modèles surround (par exemple, $$$VARIABLENAME$)
  • les modèles peuvent être redondants si vous n'utilisez pas de groupes de modèles ou réinventez ceux par défaut

Conclure

Cette fonctionnalité est un peu sous-estimée, même par les équipes de développement qui utilisent PhpStorm quotidiennement.

Profitez des modèles en direct et appuyez sur ⇥Tab ?

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn