|
Une petite news sur un problème qui m'a fait perdre un peu temps avec un google par très efficace.
Comment concaténer des include_path dans un ou plusieurs php.ini.
Tout d'abord le contexte :
Debian 5, installation standard, et j'utilise 3 php.ini dont les 2 premiers sont inchangés :
- /etc/php5/apache2/php.ini --> qui est le php.ini pour les pages web
- /etc/php5/cli/php.ini --> qui est le php.ini pour les scripts php en ligne de commande
- /etc/php5/conf.d/fichier.ini --> Par défaut tout ce qui est dans conf.d/ est ajouté au php.ini des pages web et de la ligne de commandes. C'est ce fichier commun aux deux autre que je modifie.
D'après la doc php, pour concaténer des include_path il faut faire :
include_path = ${include_path}:/nouv/path
Mais ceci ne semble pas fonctionner, explication :
Si on regarde le path en ligne de commande avec la commande "php -i | grep include_path" , on obtient :
include_path => .:/usr/share/php:/usr/share/pear
On pense à un path par défaut (ce qui est vrai car include_path est commenté dans le php.ini)
Mais quand on ajoute à "/etc/php5/conf.d/fichier.ini " la ligne "include_path = ${include_path} :/nouv/path" on obtient comme nouveau path :
include_path => :/nouv/path
On peut donc penser que l'ajout du path n'a pas fonctionné.
Oui mais à présent décomentons dans le fichier "/etc/php5/cli/php.ini" la ligne include_path = ".:/usr/share/php"
la path devient à présent :
include_path => .:/usr/share/php:/nouv/path
La concaténation à fonctionnée !
En conclusion il faut comprendre qu'on ne peux pas concaténé de path au path par défaut, mais seulement à un path déjà définit.
Pierre.
|