Eclipse et Xdebug n’parsingnt pas d’autres fichiers ini dans /etc/php5/conf.d

J’ai installé Eclipse 3.6.2 sur Ubuntu 11.4 pour AMD64 et Xdebug .

Eclipse a été installé avec le téléchargement de zip depuis eclipse.org. PHP et Xdebug ont été configurés avec apt-get .

Lorsque je lance le script PHP dans le shell, ils vont utiliser le fichier /etc/php5/php.ini et parsingr des fichiers ini supplémentaires dans /etc/php5/conf.d/ .

Lorsque je cours dans Eclipse (mode d’exécution ou mode de débogage), je n’parsingrai que php.ini et aucun fichier ini supplémentaire.

Fondamentalement, toutes les extensions ne sont pas chargées.

C’est un bug intentionnel.
PDT exécute php avec l’option “-n” toujours. Il rend les fichiers ini supplémentaires indisponibles.
voir https://bugs.eclipse.org/bugs/show_bug.cgi?id=339547
aussi https://bugs.eclipse.org/bugs/show_bug.cgi?id=347618

BTW, vous serez en mesure d’append un script shell qui modifie l’option “-n” en tant que fichier exécutable PHP (Préférences> PHP> Exécutables PHP)
Par exemple,

  #! / bin / sh
 if [$ 1 = "-n"];  puis
   décalage;
 Fi
 / usr / bin / php $ * 

La réponse que @atlanto donne comme travail a fonctionné et fonctionne toujours, mais la version récente d’Eclipse (Je suis sur Neon) a un correctif qui peut fonctionner pour vous si vous ne voulez pas utiliser php.ini et conf.d défini par défaut pour l’exécutable php.

Le fait de ne pas charger des fichiers supplémentaires ne se produit que si vous placez un fichier php.ini explicite lors de la définition d’un exécutable PHP. Laissez ce champ vide et cochez la case Use system default php.ini configurate .

entrer la description de l'image ici

Maintenant, si vous utilisez l’emplacement / php.ini spécifié par défaut lors de la construction de l’exécutable, il respectera l’parsing des répertoires conf.d

Voici comment vérifier si votre php a scan conf.d enable et où l’emplacement par défaut approprié est:

  php -i "(command-line 'phpinfo()')" | grep "Configure Command" 

Vous devriez voir quelque chose comme:

 Configure Command => './configure' '--prefix=/usr/local/Cellar/php5/5.6.29_5' '--localstatedir=/usr/local/var' '--sysconfdir=/usr/local/etc/php/5.6' '--with-config-file-path=/usr/local/etc/php/5.6' '--with-config-file-scan-dir=/usr/local/etc/php/5.6/conf.d' '--mandir=/usr/local/Cellar/php56/5.6.29_5/share/man' ... and so on... 

Les éléments importants sont:

  • with-config-file-path : ceci pour chercher votre fichier php.ini
  • with-config-file-scan-dir : c’est le conf.d qui sera analysé

Si vous souhaitez toujours choisir un emplacement différent de celui par défaut pour l’exécutable, vos options sont les suivantes:

  • Intégrez les directives de module et de fichier dans conf.d dans votre autre php.ini
  • Reconstruire php et définir les options ci-dessus sur votre nouvel emplacement par défaut
  • Utilisez le script wrapper @atlanto indique