Explode et antislashes ...

Résolu
Poolky Messages postés 20 Date d'inscription samedi 25 novembre 2000 Statut Membre Dernière intervention 2 août 2006 - 2 août 2006 à 23:33
pastis51forever Messages postés 172 Date d'inscription dimanche 29 juin 2003 Statut Membre Dernière intervention 8 septembre 2006 - 3 août 2006 à 09:50
Bonsoir tout le monde,
J'ai un petit soucis, et j'aimerais si c'était possible que vous m'otiez cette épine du pied!
Je voudrais faire un explode d'une chaine de caractère qui se trouve être l'adresse d'un fichier sur mon dur.
Donc du type :




C:\Mes documents\XXX\XXX\image1.jpg





Le but de l'opération étant de récupérer juste le nom du fichier.
le problème est que lorsque je fais :




$str=explode("",$chaine$);







il me mets tout ce qui est a droite du \ dans la chaine de separation, comme s'il ne detectait pas le guillemet fermant. Lorsque je mets un deuxieme guillemet derriere le premier, il me detecte alors bien la fermeture sauf que je caractere de séparation devient ".
Je ne sais pas si je me fais bien comprendre mais s'il vous plait aider moi!!

Pour info j'ai essayer de remplacer les \ par des / avec str_remplace mais ca me fais la meme chose.
Sinon vu que je recupere ma chaine de caratere d'un input file placé dans un formulaire, y a-t-il moyen de recuperer juste le nom du fichier et ainsi d'éviter toutes les opérations du dessus?

Merci à l'avance de votre aide

3 réponses

ImmortalPC Messages postés 954 Date d'inscription mardi 11 mai 2004 Statut Membre Dernière intervention 11 novembre 2008 2
2 août 2006 à 23:54
Salut,
quand tu fais "" c' est comme si tu indiquais à php que le caractère " qui suit ne doit pas être compté comme une fermeture !!!!

<?php
$lien = 'C:\Mes documents\XXX\XXX\image1.jpg';

$image = explode('\\', $lien);

// 1ere possibilité d' affichage
echo $image[count($image)-1];

// Seconde possiblilité d' affichage
echo array_pop($image);

?>
@+

Immortal-PC,
téléchargements,astuces ,entre-aide informatique , conseils pour vos problèmes d'ordi. 
<!--StartFragment -->Grâce à Immortal-PC votre ordinateur passera les âges.
3
Poolky Messages postés 20 Date d'inscription samedi 25 novembre 2000 Statut Membre Dernière intervention 2 août 2006
2 août 2006 à 23:59
peccable!
Merci bien ca marche nikel.
0
pastis51forever Messages postés 172 Date d'inscription dimanche 29 juin 2003 Statut Membre Dernière intervention 8 septembre 2006 1
3 août 2006 à 09:50
Bonjour,
Il y a aussi une autre possibilité pour récupérer le nom d'un fichier dans une adresse: La fonction basename()
à voir ici: http://uk2.php.net/manual/es/function.basename.php
@+
0