- Cliquez
Run -> Edit Configurations
- Dans la boîte de dialogue Cliquez
+
(ajouter)
- Sélectionnez
PHP Script
de la liste déroulante
- Dans le champ Nom de type
Symfony Web-Server
- Dans le champ Script mis le chemin d'accès votre
bin/console
par exemple: /path/to/symfony/bin/console
- éventuellement décocher
Activate Tool Window
à pré l'évacuer de sauter quand a commencé
- Dans le champ des arguments de type
server:run
- Cliquez sur OK pour enregistrer et fermer la boîte de dialogue
Cela vous donnera une option Run Symfony Web-Server
et Debug Symfony Web-Server
à sélectionner. Pour déboguer le serveur en cours d'exécution, vous devez indiquer à PHPStorm d'écouter les connexions de débogage avant d'exécuter le script du serveur. Pour configurer le débogage dans votre Settings -> Languages & Frameworks -> PHP -> Servers
assurez-vous que 127.0.0.1:8000
a été créé, désactivez Path Mapping
et Xdebug est défini comme débogueur. Désactivez éventuellement l'arrêt à la première ligne dans les paramètres Debug -> XDebug
.
Maintenant, vous pouvez démarrer le serveur en le sélectionnant dans votre chute Run de configuration vers le bas, et en cliquant sur le bouton Lecture. Assurez-vous de dire à PHPStorm d'écouter les connexions de débogage en premier.
ou en cliquant sur Run -> Symfony Web-Server
.
Ajoutez des points d'arrêt, puis lancez votre navigateur sur une route affectée par les points d'arrêt et PHPStorm devrait capturer la session de débogage et se rompre comme vous le souhaitez.
Si le débogage échoue au premier, à proximité de tous les services de PHPStorm en cours d'exécution, et essayez d'exécuter le Debug Symfony Web-Server
(veiller à ce que PHPStorm écoute pour les connexions de débogage), puis relancer votre navigateur. Pour une raison quelconque, Xdebug peut ne pas s'initialiser autrement, mais ce comportement est sporadique et difficile à reproduire de manière cohérente. Après son initialisation, vous pouvez exécuter le serveur Web non-debug pendant que l'écoute est activée, et cela semble fonctionner correctement.
Note spéciale, l'exécution du Debug Symfony Web-Server
ne surveillera le script bin/console. Cela est dû au fait que le processus php du serveur Symfony est forké et que la session de débogage surveille le processus parent .Vous devez donc indiquer à PHPStorm d'écouter les connexions de débogage lors du débogage du serveur Web.
Peu d'options possibles: 1) Fonctionnalité [Outils externes] (https://confluence.jetbrains.com/display/PhpStorm/Running+External+Tools+in+PhpStorm) 2) Exécuter/Déboguer la configuration de "PHP Le type de script peut également fonctionner. Peut-être existe-t-il d'autres moyens (par exemple, exécuter par npm/gulp/grunt/tâche de phing ou similaire) ... Je ne suis pas un utilisateur de Symfony + je préfère utiliser le serveur web "approprié" (Apache/nginx/IIS) sur le serveur de PHP ne peut donc pas penser à d'autres moyens en ce moment. – LazyOne
Ce serait génial, si je pouvais même mettre des points de rupture dans mon code. –
Vous pouvez également créer un alias à l'aide de l'outil d'intégration d'outils de ligne de commande pour exécuter rapidement une telle commande. Autre que cela (dans le cas où vous ne l'avez pas encore vu): https://confluence.jetbrains.com/display/PhpStorm/Symfony+Development+using+PhpStorm – LazyOne