TECHNOLOGIES / PHPStorm

PHPStorm : le meilleur IDE pour programmer en PHP

PHPStorm est l'IDE édité par JetBrains spécialement conçu pour le PHP. Il intègre des fonctionnalités intelligentes qui permettent aux développeurs d'être plus productifs et de s'épanouir dans leur travail.

Toute l'équipe SmartBooster l'utilise au quotidien et il fonctionne parfaitement sur Linux !.

PRÉSENTATION

Qu'est-ce que PHPStorm ?

PHPStorm est un IDE (environnement de développement intégré) édité par la société JetBrains, spécialement conçu pour le langage de programmation PHP. Il comprend le code de votre projet en profondeur et vous donne accès à des fonctionnalités intelligentes : coloration syntaxique avancée, autocomplétion contextuelle, génération de code, refactoring de méthode, variable ou classe, détection d'erreurs de syntaxe et respect de vos standards de formatage.

Un autre avantage de PHPStorm est qu'il s'intègre parfaitement avec l'écosystème PHP : Git, PHPUnit, XDebug, Composer, mais aussi vos bases de données MySQL, SQLite et PostgreSQL. Il supporte nativement les principaux frameworks PHP (Symfony, Laravel, WordPress...) et frontend (Vue.js, React, Angular). Il fonctionne parfaitement sur Linux.

Le logiciel est payant pour un usage professionnel, mais JetBrains propose des versions gratuites pour les étudiants, les projets open source et certains usages.

Logo PHPStorm

POURQUOI PHPSTORM

Ce qui en fait notre standard de développement

PHPStorm est présent sur tous les postes de l'équipe SmartBooster. Voici les fonctionnalités qui ont fait la différence.

Compréhension profonde du code

PHPStorm analyse votre projet en profondeur : autocomplétion contextuelle, détection d'erreurs de syntaxe, navigation entre classes et méthodes. Le refactoring (renommage de variable, extraction de méthode) est sûr et instantané.

Intégration native avec l'écosystème PHP

PHPUnit, XDebug, Composer, Git → tout est intégré sans configuration supplémentaire. Les tests s'exécutent depuis l'IDE et les points d'arrêt fonctionnent en un clic avec XDebug.

Support multi-langages

En plus du PHP, PHPStorm gère HTML5, CSS, Sass, TypeScript, Vue.js, React, Bash et Makefile. Un seul outil couvre l'ensemble de la stack d'un projet Symfony avec frontend Vue.js.

Client base de données intégré

La connexion aux bases MySQL, SQLite et PostgreSQL est native. Explorez vos tables, exécutez des requêtes SQL et visualisez les données sans quitter l'IDE.

Support natif des frameworks

Symfony, Laravel, Vue.js, React, Angular → PHPStorm reconnaît les conventions de chaque framework et adapte son autocomplétion, ses inspections et ses raccourcis en conséquence.

Parfaitement adapté à Linux

PHPStorm est un des rares IDE professionnels à fonctionner aussi bien sur Linux que sur macOS ou Windows. Un avantage clé pour une équipe qui développe principalement sous Linux.

INTELLIGENCE ARTIFICIELLE

JetBrains AI : AI Assistant et Junie

JetBrains intègre l'IA directement dans PHPStorm à travers deux produits distincts. Ces outils partagent le contexte de votre projet ouvert dans l'IDE et s'utilisent sans quitter l'éditeur.

AI Assistant : l'IA intégrée à l'éditeur

AI Assistant est intégré directement dans PHPStorm. Il propose de la complétion de code contextuelle, de la génération de code, des explications inline et une aide à la rédaction de tests. Il a accès à l'ensemble du contexte du projet ouvert dans l'IDE.

Junie : l'agent IA autonome

Junie est l'agent IA de JetBrains capable d'exécuter des tâches complexes de manière autonome : analyser un bug, appliquer un refactoring sur plusieurs fichiers, écrire et lancer des tests. Il opère directement dans l'IDE sur votre codebase.

JetBrains AI vs Claude Code

AI Assistant et Junie excellent dans l'interface graphique de l'IDE : accès immédiat, intégration visuelle, raccourcis clavier. Claude Code opère en ligne de commande, gère des tâches plus longues sur l'ensemble du projet et s'affranchit des limites de l'éditeur. Les deux outils sont complémentaires.

BONNES PRATIQUES & DOCUMENTATION

Nos conventions PHPStorm

Documentation de référence pour l'équipe SmartBooster.

Dump avec le client sql Phpstorm

Pour les dumps et imports, on préfère le client de PhpStorm car il permet de configurer facilement les bons exécutables selon la version du serveur, tout en offrant un processus d'import beaucoup plus robuste et fiable que Workbench.

Clic droit sur la base puis import/export puis choisir "Export with mysqldump" Export mysqldump dans PhpStorm

Options

Par défaut, l'outil mysqldump active automatiquement un groupe d'options appelé --opt. Ce groupe inclut Les options :

  • --add-locks : Cette option ajoute des instructions LOCK TABLES ... WRITE; et UNLOCK TABLES; à l'intérieur du fichier .sql généré. Lors de la restauration, MySQL bloquera temporairement la table pour insérer les données d'un coup sec, ce qui accélère énormément la vitesse d'importation.
  • --create-options : Force MySQL à inclure toutes ses options spécifiques (comme le moteur de stockage ENGINE=InnoDB, le DEFAULT CHARSET, ou l'incrémentation de départ) dans la ligne CREATE TABLE du fichier final.
  • --lock-tables : A désactivé : Demande à MySQL de verrouiller les tables en lecture pendant qu'il les exporte.
  • --disable-keys : Ajoute une commande dans le fichier .sql pour dire à MySQL : "Désactive la mise à jour des index pendant que tu insères les millions de lignes, et recrée les index globalement à la toute fin". Cela évite au serveur de recalculer les index à chaque ligne ajoutée lors d'un futur import, divisant le temps de restauration par 4 ou 5.
  • --add-drop-table : Écrit un DROP TABLE IF EXISTS \ma_table`;juste avant chaqueCREATE TABLE` dans ton fichier de sauvegarde. Si réimportation de cette sauvegarde sur une base qui contient déjà d'anciennes tables du même nom, elle les écrasera proprement.
  • --extended-insert : Au lieu d'écrire une ligne de commande INSERT INTO... pour chaque ligne de ta base, MySQL va regrouper les données (ex: INSERT INTO table VALUES (1), (2), (3)...). Cela réduit drastiquement la taille finale de ton fichier .sql et rend la lecture par MySQL beaucoup plus rapide.

Autres options :

  • --single-transaction : à ajouter dans la commande de dump, ne bloque pas la base pendant la génération d'un dump. mysqldump va utiliser un mécanisme propre au moteur InnoDB : le snapshot (instantané) transactionnel. Sans cette option, la base devient indisponible lors du dump

En résumé : Il faut juste supprimer --lock-tables et ajouter --single-transaction . Il est possible de modifier la commande dans le client phpstorm. Exemple de commande :

"nom_base" --single-transaction --result-file="/home/user/Téléchargements/{data_source}-{timestamp}-dump.sql" --skip-add-locks  

Import avec le client phpstorm

Pour les dumps et imports, on préfère le client de PhpStorm car il permet de configurer facilement les bons exécutables selon la version du serveur, tout en offrant un processus d'import beaucoup plus robuste et fiable que Workbench.

Clic droit sur la base puis import/export puis choisir "Restore with mysql" Restore with mysql dans PhpStorm

Durant l'import, la base reste disponible en écriture, mais les données sont surchargé à un moment ou à un autre par les nouvelles.

Pour aller plus loin

Documentation utile

PHPStorm : Site officiel JetBrains

Documentation, téléchargement et présentation des fonctionnalités de PHPStorm.

AI Assistant : l'IA au plus proche du code

L'assistant IA intégré à PHPStorm pour la complétion, la génération et l'explication de code.

Junie : L'agent IA autonome de JetBrains

Agent IA capable d'exécuter des tâches complexes de manière autonome directement dans l'IDE.

Versions gratuites et réductions PHPStorm

Licences étudiants, open source, startups et autres programmes de réduction JetBrains.

Pour aller plus loin

Approfondir votre réflexion

Développement de logiciel sur mesure

PHPStorm est l'IDE de référence de l'équipe SmartBooster. Il accélère le développement PHP et Symfony grâce à une intégration profonde du framework.

Symfony

PHPStorm embarque le plugin Symfony officiel : autocomplétion des services, navigation dans les templates Twig et accès aux routes depuis l'IDE.

PHP

PHPStorm est conçu spécifiquement pour PHP : inspection de code, refactoring assisté et débogage intégré avec Xdebug font de lui l'outil idéal pour les projets PHP.

Linux

PHPStorm fonctionne nativement sous Linux, l'environnement de développement de toute l'équipe SmartBooster et le système de nos serveurs de production.

Vous avez un projet ?

Contactez-nous pour savoir comment nous pouvons vous aider.