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

Signaler
Messages postés
6
Date d'inscription
vendredi 23 mai 2003
Statut
Membre
Dernière intervention
9 novembre 2009
-
Messages postés
2
Date d'inscription
vendredi 30 janvier 2009
Statut
Membre
Dernière intervention
12 novembre 2009
-
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

Messages postés
2
Date d'inscription
vendredi 30 janvier 2009
Statut
Membre
Dernière intervention
12 novembre 2009

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.
Messages postés
97
Date d'inscription
lundi 26 novembre 2001
Statut
Membre
Dernière intervention
24 février 2012

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+
Messages postés
2
Date d'inscription
vendredi 30 janvier 2009
Statut
Membre
Dernière intervention
12 novembre 2009

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.
Messages postés
6
Date d'inscription
vendredi 23 mai 2003
Statut
Membre
Dernière intervention
9 novembre 2009

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 ?