Récuperer le chemin réel d’un répertoire

Quand on récupère un chemin menant vers un répertoire avec un client FTP,  il arrive souvent que ce chemin soit différent de celui de PHP.

exemple :cheminClassesFTP

le répertoire « classes » est bien à la racine du FTP,  on pense donc pouvoir viser son contenu avec un chemin absolu :

require_once '/classes/contenu.php';

et on ce retrouve avec une erreur d’inclusion sous cette forme :

Fatal error: require_once() [function.require]: Failed opening required '/classes/contenu.php' (include_path='/mnt/119/sdb/2/f/web.codeur/include:.:/usr/php5/lib/php') in /mnt/129/sdb/6/f/web.codeur/test.php on line 21

Donc pour être certain d’un chemin, le plus simple est d’exécuter un tout petit script PHP :

echo realpath('./');

dans mon cas, ce script me donne ce résultat :
/mnt/119/sdb/2/f/web.codeur/classes

ce qui n’a rien à voir avec l’affichage du client FTP.


je peux donc maintenant définir une constante dans un fichier de configuration :

define('DIR_CLASSES', '/mnt/119/sdb/2/f/web.codeur/classes/');

et l’utiliser dans tous les fichiers ayant besoin d’inclure les classes.

exemple :

require_once DIR_CLASSES.'contenu.php';

Laisser un commentaire

*