RÉCUPÉRER LE CHEMIN RELATIF D'UN OBJET PAR RAPPORT À LA RACINE DU SITE.

mlinux Messages postés 6 Date d'inscription vendredi 23 mai 2003 Statut Membre Dernière intervention 9 novembre 2009 - 9 nov. 2009 à 09:40
FredPsy Messages postés 2 Date d'inscription vendredi 30 janvier 2009 Statut Membre Dernière intervention 12 novembre 2009 - 12 nov. 2009 à 10:05
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/50813-recuperer-le-chemin-relatif-d-un-objet-par-rapport-a-la-racine-du-site

FredPsy Messages postés 2 Date d'inscription vendredi 30 janvier 2009 Statut Membre Dernière intervention 12 novembre 2009
12 nov. 2009 à 10:05
Bonjour.

Effectivement avec __FILE__ c'est mieux mais ça fonctionne aussi avec __file__.

Je n'ai pas testé sous Linux.

Concernant le remplacement des antislash par des slash, je n'en ai pas le besoin.
Le __file__ appelant et le __file__ courant sont explosés en chaines séparées sans antislash et
c'est la fonction implode qui se charge de rajouter les slash.
cs_glad Messages postés 97 Date d'inscription lundi 26 novembre 2001 Statut Membre Dernière intervention 24 février 2012
12 nov. 2009 à 08:23
Salut

Attention, en regardant en diagonale, je vois un petit bug :

__file__

devrait être :
__FILE__

As-tu testé ton astuce sous Linux ?

J'aurais remplacé mes anti slash par des slash :

$chemin_fichier_courant = str_replace('\\', '/', __FILE__);

A tester...
A+
FredPsy Messages postés 2 Date d'inscription vendredi 30 janvier 2009 Statut Membre Dernière intervention 12 novembre 2009
9 nov. 2009 à 17:53
Bonjour.
En fait, il faut considérer cette fonction comme faisant partie d'un objet qui comporte une autre fonction avec par exemple un echo '';

J'appelle cet objet depuis index.php et ma fonction se trouve dans libs/mes_objets/mon_objet.class.php.
Dans ce même objet, j'ai besoin d'insérer une image qui se trouve dans libs/mes_objets/common_image/.

Mon objet étant appelé depuis la racine, si je n'ai pas le chemin relatif vers mon image (./libs/mes_objets/common_image/), index.php va chercher l'image dans ./common_image/ et forcement, il ne la trouvera pas.

J'espère avoir été assez clair.
mlinux Messages postés 6 Date d'inscription vendredi 23 mai 2003 Statut Membre Dernière intervention 9 novembre 2009
9 nov. 2009 à 09:40
Bonjour Fred,

Ton idée est fort intéressante, mais je ne suis pas sûr d'avoir bien tout compris.

Voila ce que j'ai compris.


function setChemin($chemin_fichier_appelant)
{
. . .
}

$chemin_repertoire = setChemin(__file__);
echo '';

Est-ce cela ?
Rejoignez-nous