IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

EDI, CMS, Outils, Scripts et API PHP Discussion :

[Xdebug 3] Configuration et utilisation de Xdebug


Sujet :

EDI, CMS, Outils, Scripts et API PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2014
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes

    Informations forums :
    Inscription : Décembre 2014
    Messages : 42
    Par défaut [Xdebug 3] Configuration et utilisation de Xdebug
    Bonjour à tous,

    Je suis débutant en PHP et je cherche à configurer Xdebug 3 pour mon éditeur Sublime Text 3. Ma distribution est XAMPP, je suis sous windows 10 x64.

    En suivant les instructions du wizzard d'installation https://xdebug.org/wizard, j'ai ajouté à la fin du fichier php.ini :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    [XDebug]
    zend_extension = "C:/xampp/php/ext/php_xdebug.dll"
    xdebug.mode=debug
    Apparemment, xdebug s'est bien installé, voilà ce que j'ai dans l'encadré "Enabled Features" de mon info.php :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Enabled Features
    (through 'xdebug.mode' setting)
    Feature Enabled/Disabled    Docs
    Development Helpers ✘ disabled  🖹
    Coverage    ✘ disabled  🖹
    GC Stats    ✘ disabled  🖹
    Profiler    ✘ disabled  🖹
    Step Debugger   ✔ enabled   🖹
    Tracing ✘ disabled  🖹
    Pour la configuration de Sublime Text 3, les choses se compliquent. J'ai peiné à trouver de l'aide sur le net, j'ai finalement essayé de suivre ce lien https://bhargavb.com/debugging-with-...ublime-text-3/

    A l'étape 2, je fais donc ctrl+shift+p, Package Control : Install Package et clique sur Xdebug client. Je n'ai pas eu de message qui confirme la bonne installation, pour autant j'ai bien Xdebug dans Préférences > Package Settings.

    Après pour l'utilisation, le tuto me conduit à aller dans un projet créé, faire un save project as, des lignes doivent apparaître par défaut, cela me paraît compliqué. Comme je débute, je n'ai pas encore de projet de créé. N'est-il pas possible d'utiliser xdebug pour aider à debuger un simple script .php ?

    Merci par avance pour votre aide, maintenant, à l'ouverture d'un fichier Sublime Text, j'ai le message d'erreur "Unable to read project..." ?

  2. #2
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2014
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes

    Informations forums :
    Inscription : Décembre 2014
    Messages : 42
    Par défaut
    Bonjour,

    Personne n'a installé Xdebug 3 pour Sublime Text ?

    Je n'ai sans doute pas posté dans le bon forum mais jusqu'à maintenant je n'ai pas trouvé dans la section "Environnement de développement". S'il est possible de déplacer mon sujet ou de dire où poster ?

    Merci

  3. #3
    Membre émérite
    Homme Profil pro
    Autre
    Inscrit en
    Juillet 2021
    Messages
    433
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Juillet 2021
    Messages : 433
    Par défaut
    Bonjour,

    Je n'utilise pas SublimeText mais pour répondre à ta dernière question : même pour un simple script php, il faut tout de même créer un projet dans ton éditeur.
    Une fois le projet créé, tu devrais effectivement trouver un fichier de configuration dans lequel tu devras renseigner l'URL locale de ton site (comme indiqué à l'étape 3 du guide sur bhargavb.com). C'est grâce à ce fichier de configuration que xdebug pourra fonctionner dans SublimeText.

    Bonne journée,

  4. #4
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2014
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes

    Informations forums :
    Inscription : Décembre 2014
    Messages : 42
    Par défaut
    Hello,

    même pour un simple script php, il faut tout de même créer un projet dans ton éditeur.
    D'accord, je ne savais pas.

    Une fois le projet créé, tu devrais effectivement trouver un fichier de configuration dans lequel tu devras renseigner l'URL locale de ton site (comme indiqué à l'étape 3 du guide sur bhargavb.com). C'est grâce à ce fichier de configuration que xdebug pourra fonctionner dans SublimeText.
    C'est n'est sans doute pas difficile mais quelque chose m'échappe ou je ne sais pas m'y prendre.

    Comme je n'ai pas de projet personnel, j'ai téléchargé deux projets exemples ici

    Dans le dossier conf-projet (que j'ai placé sous C:\xampp\htdocs) j'ai donc quatre fichiers :
    - deplacement-selection : Sublime Project
    - deplacement-selection : Sublime Workspace
    - gestion-projet : Sublime Project
    - gestion-projet : Sublime Workspace

    Ensuite, je vais dans Project > Save Project As..

    Et je rentre un autre nom de projet, par exemple gestion-projet-bis > enregistrer

    Je devrais voir apparaître les lignes ci-dessous, mais je ne les ai pas.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    {
        "folders":
        [
            {
               "path": "."
            }
        ]
    }
    Avez-vous des idées ?

  5. #5
    Membre émérite
    Homme Profil pro
    Autre
    Inscrit en
    Juillet 2021
    Messages
    433
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Juillet 2021
    Messages : 433
    Par défaut
    Pour l'occasion je viens d'installer la dernière version de SublimeText (Build 4126) et j'ai suivi le même guide sur bhargavb.com avec un nouveau projet.
    J'ai déjà un serveur web installé (Apache), PHP 8.1.2 et Xdebug 3 sont également déjà installés.

    J'ai donc créer un nouveau dossier nommé testdebug dans le dossier htdocs de mon serveur web. Je crée dans ce dossier un fichier index.php avec quelques lignes de code PHP. Je démarre mon serveur web et je vérifie que j'ai bien accès à ce fichier via l'URL http://localhost/testdebug/ -> ok le fichier index.php est bien exécuté.

    J'ouvre ensuite SublimeText, j'installe le package “Xdebug client” comme indiqué à l'étape 2 du guide. Je n'ai pas eu de message de confirmation non plus, mais je retrouve bien un menu Xdebug dans le menu Tools.
    J'ouvre mon dossier testdebug dans SublimeText (File -> Open Folder), puis je l'enregistre en tant que projet via le menu Project -> Save Project As..., SublimeText demande alors de nommer le fichier de configuration du projet, pour faire simple j'utilise le même nom que le projet. Je retrouve donc à coté de mon fichier index.php, un fichier de configuration nommé testdebug.sublime-project qui contient uniquement ces lignes :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    {
    	"folders":
    	[
    		{
    			"path": "."
    		}
    	]
    }
    Comme indiqué à l'étape 3 du guide, j'ai ajouté l'URL vers le projet dans la configuration pour xdebug. J'ai également dû ajouter le port utilisé par xdebug sur mon poste (9003), par défaut SublimeText utilise le port 9000 (si le problème vient du numéro du port, tu devrais avoir des messages d'erreurs dans le journal d'erreur de PHP, utiliser phpinfo() pour localiser le journal d'erreur si besoin).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    {
    	"folders":
    	[
    		{
    			"path": "."
    		}
    	],
    	"settings": {
    		"xdebug": {
    			"url": "http://localhost/testdebug/",
    			"port": 9003,
    		}
    	}
    }
    Enfin, dans SublimeText j'ajoute un breakpoint dans mon fichier index.php puis le lance débogage via le menu Tools -> Xdebug -> Start Debugging (Launch Browser), mon navigateur ouvre alors la page http://localhost/testdebug/?XDEBUG_S...sublime.xdebug et je retrouve bien dans SublimeText le contexte d’exécution afin de déboguer mon code.

    En espérant que ça puisse t'aider un peu.

  6. #6
    Membre averti
    Homme Profil pro
    Ingénieur qualité méthodes
    Inscrit en
    Décembre 2014
    Messages
    42
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 38
    Localisation : France, Nord (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Ingénieur qualité méthodes

    Informations forums :
    Inscription : Décembre 2014
    Messages : 42
    Par défaut
    Bonjour Pytet,

    Je te remercie pour ton aide, j'ai finalement réussi à configurer Xdebug ! J'ai une petite question sur le journal d'erreurs que je ne trouve pas (en bas du post).

    J'ouvre mon dossier testdebug dans SublimeText (File -> Open Folder), puis je l'enregistre en tant que projet via le menu Project -> Save Project As..., SublimeText demande alors de nommer le fichier de configuration du projet, pour faire simple j'utilise le même nom que le projet.
    Au début, dans le tuto que j'avais suivi pour créer un premier projet www.devenir-webmaster.com, j'avais créé un répertoire de nom conf-projet dédié aux configurations de projet Sublime Text. Comme ce répertoire était en dehors de l'espace du projet, je n'avais pas trouvé de fichier de configuration. En l'enregistrant dans le projet, il est bien apparu.

    J'ai également dû ajouter le port utilisé par xdebug sur mon poste (9003), par défaut SublimeText utilise le port 9000 (si le problème vient du numéro du port, tu devrais avoir des messages d'erreurs dans le journal d'erreur de PHP, utiliser phpinfo() pour localiser le journal d'erreur si besoin).
    J'ai bien trouvé le port, dans la ligne :
    Directive : xdebug.client_port Local Value : 9003 Master Value : 9003

    Avec ce port, le debugger fonctionne bien, je mets un breakpoint au milieu d'un code php, ma page se bloque bien et je peux lire mes variables dans Xdebug Context.

    Par contre, je ne localise pas le journal d'erreur :

    J'ai utilisé la commande php --info

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    # php --info | findstr /r /c:"error_log"
    error_log => C:\xampp\php\logs\php_error_log => C:\xampp\php\logs\php_error_log
    Pas de dossier logs sous C:\xampp\php chez moi. Dois-je installer un module supplémentaire ?

    Merci

Discussions similaires

  1. [Firebird] Configuration et utilisation
    Par jojo86 dans le forum Bases de données
    Réponses: 5
    Dernier message: 21/04/2016, 00h56
  2. [Commons Configuration] Comment utiliser SubsetConfiguration ?
    Par Pierre8r dans le forum API standards et tierces
    Réponses: 1
    Dernier message: 07/09/2008, 22h27
  3. Upgrader une configuration pour utilisation de jeux récents...
    Par Pierre Fauconnier dans le forum Composants
    Réponses: 15
    Dernier message: 09/11/2007, 17h32
  4. Configuration et utilisation de psotgre
    Par Pe04 dans le forum PostgreSQL
    Réponses: 3
    Dernier message: 13/02/2006, 10h50
  5. Configurer et utiliser les Aliases du projet
    Par EJ dans le forum XMLRAD
    Réponses: 9
    Dernier message: 20/05/2004, 22h51

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo