Débogage avec PhpStorm

Tirez pleinement parti du débogage PHP avec PhpStorm et Xdebug.

Définissez et gérez des points d'arrêt

L'interface graphique de débogage de PhpStorm fournit des outils polyvalents pour les points d'arrêt. Utilisez des points d'arrêt conditionnels pour vous concentrer sur des conditions à atteindre, comme des éléments spécifiques de la boucle. Besoin d'intercepter une exception lorsqu'elle est levée ? Utilisez des points d'arrêt d'exception, applicables dans l'ensemble de la base de code du projet.

Les points d'arrêt et leurs paramètres n'affectent pas votre code source, mais vous pouvez les enregistrer avec votre projet PhpStorm pour les réutiliser au cours des sessions de débogage.

Parcourez le code ligne par ligne

Si vous souhaitez déboguer le flux de contrôle et examiner les structures de données à chaque ligne de code exécuté, vous n'avez pas besoin de placer des points d'arrêt partout. Vous pouvez simplement parcourir votre code et inspecter les variables et la pile de frames en cours à chaque étape dans la fenêtre d'outil Debug.

Vous pouvez même accéder à une fonction spécifique pour un débogage ligne par ligne plus précis.

Testez des hypothèses et sachez ce que fait votre code

Fenêtre de débogage interactive

La fenêtre interactive de l'outil de débogage de PhpStorm vous permet de jouer avec l'état actuel du programme (modifier des variables, appeler ou définir des fonctions PHP ou encore évaluer des expressions arbitraires), sans modifier votre code source.

Débogueur inline

Lorsqu'un programme est suspendu, vous pouvez voir les valeurs des variables et ajouter des surveillances, non seulement dans la fenêtre d'outil de débogage, mais également inline dans l'éditeur de code. Les valeurs modifiées sont mises en évidence, ce qui permet de repérer facilement les modifications intervenues depuis la dernière fois que vous avez atteint le point d'arrêt.

Prédictions des flux de données

Grâce aux données reçues du débogueur PHP aux points d'arrêt, PhpStorm affiche des indications dans l'éditeur sur ce qui se passera dans le morceau de code exécuté. Les blocs de code du chemin qui seraient alors inaccessibles sont grisés.

Déboguez partout

Débogage local et distant

Vous obtenez des données de débogage en direct pour chaque ligne de code exécuté, même si l'exécution a lieu sur un serveur web distant (dans un conteneur Docker, dans une machine virtuelle ou sur un hôte distant par SSH). Mappez les fichiers du serveur sur leurs copies dans votre projet PhpStorm, configurez Xdebug et activez l'écoute des connexions de débogage entrantes dans PhpStorm.

Débogage de JavaScript

PhpStorm intègre le débogueur JavaScript complet de WebStorm. Il prend en charge JavaScript et Node.js dans le navigateur, et vous pouvez même lancer les débogueurs Xdebug et JavaScript simultanément.

Débogage dans les modèles Blade et Twig

Définissez des points d'arrêt dans les modèles Blade et Twig et déboguez-les comme vous le feriez avec des fichiers PHP. Et en cas d'absence de référence au code du modèle dans le fichier compilé, PhpStorm vous avertira que le point d'arrêt que vous avez défini ne sera pas fonctionnel.

Débogage des appels d'API HTTP

Vous pouvez déboguer vos requêtes HTTP vers des serveurs PHP directement à partir du client HTTP intégré à l'éditeur de PhpStorm. L'IDE ajoutera automatiquement le cookie Xdebug à la requête, l'exécutera et s'arrêtera au point d'arrêt spécifié dans le fichier PHP correspondant.

Consultez et analysez les données de profilage

En plus du débogage, PhpStorm crée des rapports visuels pour les données de profilage générées par Xdebug. Vous pouvez sélectionner plusieurs instantanés à la fois et obtenir des informations de profilage agrégées. Dans un rapport agrégé, vous pouvez passer directement des statistiques d'exécution aux fonctions concernées dans votre code PHP.

Déléguez le fardeau de la configuration à votre IDE

Vérification de la configuration Xdebug

PhpStorm extrait les données de l'installation de Xdebug sur le serveur web local ou distant pour offrir une expérience flexible et puissante de débogage dans l'IDE. Pour faciliter la configuration, l'IDE valide la configuration du débogueur dans l'environnement concerné et propose des correctifs aux problèmes détectés.

Débogage sans configuration

Avec le débogage sans configuration, il vous suffit d'ouvrir la page de démarrage de votre application PHP dans le navigateur et d'activer le moteur de débogage à cet endroit. PhpStorm écoutera les connexions entrantes du débogueur et vous présentera les données de débogage visuelles.