Maison  >  Article  >  développement back-end  >  Méthode de débogage du point d'arrêt Phpstorm+Xdebug pour PHP

Méthode de débogage du point d'arrêt Phpstorm+Xdebug pour PHP

ringa_lee
ringa_leeoriginal
2018-05-15 09:07:466183parcourir

Cet article présente principalement la méthode de débogage des points d'arrêt Phpstorm+Xdebug PHP. Ce tutoriel configurera l'extension Xdebug pour le débogage des points d'arrêt. Le but est d'améliorer l'efficacité du développement de chacun. Les amis intéressés peuvent s'y référer. 🎜>

Pourquoi utiliser le débogage des points d'arrêt

Vous pensez peut-être que vous pouvez utiliser var_dump et echo pour déboguer, pourquoi devez-vous installer le débogage des points d'arrêt Xdebug ?

C'est vrai. Cependant, le code écrit par var_dump et echo doit être supprimé ultérieurement, et il est clair où le saisir. S'il s'avère qu'il ne s'exécute pas à l'endroit où il a été écrit, le code doit être modifié et réexécuté. Avec le débogage des points d'arrêt, vous pouvez arrêter dynamiquement les points pendant le processus de débogage, afficher les valeurs actuelles de chaque variable ligne par ligne et même modifier temporairement les valeurs des variables, ce qui est plus pratique. Il est recommandé d'utiliser le débogage des points d'arrêt Xdebug.

Installer Xdebug

S'il s'agit d'une version inférieure à php7, vous devez ajouter le numéro de version :

pecl install xdebug

Si pecl indique que l'extension est introuvable, elle sera compilée à partir du code source. Par exemple :

pecl install xdebug-2.5.5

Remarque : php5.6 ne peut utiliser que la version 2.5 et inférieure de xdebug.

wget http://pecl.php.net/get/xdebug-2.5.5.tgz \
  && tar xzf xdebug-2.5.5.tgz && cd xdebug-2.5.5/ \
  && phpize \
  && ./configure \
  && make && make install
Après l'installation, vous devez le configurer dans php.ini :

Il est à noter que :

[xdebug]
zend_extension=xdebug.so
xdebug.enable=1
xdebug.remote_enable=1
;如果开启此,将忽略下面的 xdebug.remote_host 的参数
;xdebug.remote_connect_back=1
;自动启动,无需XDEBUG_SESSION_START=1
xdebug.remote_autostart=1 
;宿主机IP
xdebug.remote_host=192.168.36.101 
xdebug.remote_port=19001
xdebug.remote_handler=dbgp

1. Il s'agit de zend_extension, et non de zend_extension. extension;

2. Une fois
activé, il n'est pas nécessaire d'ajouter manuellement

à l'URL de la requête tant que Phpstorm active le débogage du point d'arrêt, tout ira bien. Très pratique ;

xdebug.remote_autostartXDEBUG_SESSION_START=13.
La machine est configurée avec Phpstorm installé. Si la machine sur laquelle php est installé et la machine sur laquelle Phpstorm est installé sont la même machine, alors écrivez simplement

dans l'adresse.

remote_host127.0.0.1Si vous utilisez un environnement Docker,
écrivez l'adresse IP de la machine hôte.

remote_host4. Le port
que j'ai écrit est

, donc Phpstorm doit également être modifié.

xdebug.remote_portUne fois la configuration terminée, php-fpm doit être redémarré. 19001

Configurer Phpstorm

La configuration est également très simple, il suffit de configurer le port :


Vous pouvez maintenant commencer le débogage avec des points d'arrêt. Activer la surveillance :


La demande sera automatiquement capturée lorsque l'url sera demandée.

Remarque :

1. N'activez pas la surveillance de plusieurs projets en même temps

2. et code Si la structure des répertoires est la même, la surveillance réussira directement. Sinon, vous serez invité à définir la relation de mappage de code. Vous pouvez également le définir manuellement :


Ici, comme l'hôte est Windows et le code est sous Linux, les répertoires sont incohérents et le mappage est effectué. Sinon, le point d'arrêt échouera.


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