FredPsy
Messages postés2Date d'inscriptionvendredi 30 janvier 2009StatutMembreDernière intervention12 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és97Date d'inscriptionlundi 26 novembre 2001StatutMembreDernière intervention24 février 2012 12 nov. 2009 à 08:23
Salut
Attention, en regardant en diagonale, je vois un petit bug :
FredPsy
Messages postés2Date d'inscriptionvendredi 30 janvier 2009StatutMembreDernière intervention12 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és6Date d'inscriptionvendredi 23 mai 2003StatutMembreDerniè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)
{
. . .
}
12 nov. 2009 à 10:05
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.
12 nov. 2009 à 08:23
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+
9 nov. 2009 à 17:53
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.
9 nov. 2009 à 09:40
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 ?