Fonction explode pour recuperer une extension
Résolu/Fermé
Bonjour je vous explique mon problème
j'ai une valeur $champ qui contient une url typ http://monsite/repertoire/monfichier.mp3 ou alors http://monsite/repertoire/repertoire/repertoire/monfichier.jpg
comment puis je faire en sorte avec un explode de toujours recuperer la derniere partie de la chaine ? pour n'avoir que le .mp3 ou .jpg dans une nouvelle valeur ?
j'ai bien trouvé si la chaine de caractère est toujours sur le même modele mais si elle est variable comment faire pour toujours choisir la derniere ?
merci de votre aide
j'ai une valeur $champ qui contient une url typ http://monsite/repertoire/monfichier.mp3 ou alors http://monsite/repertoire/repertoire/repertoire/monfichier.jpg
comment puis je faire en sorte avec un explode de toujours recuperer la derniere partie de la chaine ? pour n'avoir que le .mp3 ou .jpg dans une nouvelle valeur ?
j'ai bien trouvé si la chaine de caractère est toujours sur le même modele mais si elle est variable comment faire pour toujours choisir la derniere ?
merci de votre aide
A voir également:
- Fonction explode pour recuperer une extension
- Fonction si et - Guide
- Recuperer message whatsapp supprimé - Guide
- Changer extension fichier - Guide
- Recuperer video youtube - Guide
- Récupérer mon compte facebook désactivé - Guide
6 réponses
Dalida
Messages postés
6728
Date d'inscription
mardi 14 mai 2002
Statut
Contributeur
Dernière intervention
11 janvier 2016
922
19 mars 2009 à 11:17
19 mars 2009 à 11:17
salut,
en une ligne :
sans le "+ 1" pour garder le point.
en une ligne :
$ext = substr($uri, strrpos($uri, '.') + 1);
sans le "+ 1" pour garder le point.
Bonjour
Il suffit simplement que tu récupères le nom de ton fichier et tu fais un explode sur le nom de ton fichier et son extension. Tu coupes alors ta chaine de caractère au niveau du point et tu obtiens un tableau avec des deux morceaux tab[0] = nom du fichier, tab[1] = extension du fichier
Ne t'embetes pas avec l'url complète !!!!
Melaine
Il suffit simplement que tu récupères le nom de ton fichier et tu fais un explode sur le nom de ton fichier et son extension. Tu coupes alors ta chaine de caractère au niveau du point et tu obtiens un tableau avec des deux morceaux tab[0] = nom du fichier, tab[1] = extension du fichier
Ne t'embetes pas avec l'url complète !!!!
Melaine
Salut
Il suffit de faire deux explode
//recuperation url
$chaine = "http://monsite/repertoire/monfichier.mp3";
//delimiteur1
$delimiteur1 = "http://monsite/repertoire/";
//premiere decoupe
$tab1 = explode($delimiteur1,$chaine);
//debut de l'url
$beginURL = $tab1[0];
//nom du fichier avec extension
$nomFICHIERext = $tab1[1];
//delimiteur2
$delimiteur2 = ".";
//seconde decoupe
$tab2 = explode($delimiteur2,$nomFICHIERext);
//nom du fichier sans extension
$nomFICHIERsansext = $tab2[0];
//extension
$extension = $tab2[1];
Voili voilou
Melaine
Il suffit de faire deux explode
//recuperation url
$chaine = "http://monsite/repertoire/monfichier.mp3";
//delimiteur1
$delimiteur1 = "http://monsite/repertoire/";
//premiere decoupe
$tab1 = explode($delimiteur1,$chaine);
//debut de l'url
$beginURL = $tab1[0];
//nom du fichier avec extension
$nomFICHIERext = $tab1[1];
//delimiteur2
$delimiteur2 = ".";
//seconde decoupe
$tab2 = explode($delimiteur2,$nomFICHIERext);
//nom du fichier sans extension
$nomFICHIERsansext = $tab2[0];
//extension
$extension = $tab2[1];
Voili voilou
Melaine
Bonjour,
Mais pourquoi vous vous embêtez ?
Ne serait-il pas BEAUCOUP plus simple de faire un explode sur le caractère '.', et de récupérer le dernier élément du tableau ?
//recuperation url
$chaine = "http://monsite/repertoire/monfichier.mp3";
//delimiteur
$delimiteur = ".";
//decoupe
$tab = explode($delimiteur, $chaine);
//extension
$extension = $tab[count($tab)-1];
($extension ne contient pas le point, si tu veux le point, c'est pas compliqué, il faut faire
$extension = "." . $tab[count($tab)-1];
Voilà :)
Bonne programmation !
Xavier
Mais pourquoi vous vous embêtez ?
Ne serait-il pas BEAUCOUP plus simple de faire un explode sur le caractère '.', et de récupérer le dernier élément du tableau ?
//recuperation url
$chaine = "http://monsite/repertoire/monfichier.mp3";
//delimiteur
$delimiteur = ".";
//decoupe
$tab = explode($delimiteur, $chaine);
//extension
$extension = $tab[count($tab)-1];
($extension ne contient pas le point, si tu veux le point, c'est pas compliqué, il faut faire
$extension = "." . $tab[count($tab)-1];
Voilà :)
Bonne programmation !
Xavier
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
Bonjour tout le mone,
Lorsque je teste ce code, au niveau de la ligne de l'explode, j'ai le message d'erreur suivant:
Undefined subroutine &main::explode called at ...
que faut-il faire ?
Merci d'avance
Lorsque je teste ce code, au niveau de la ligne de l'explode, j'ai le message d'erreur suivant:
Undefined subroutine &main::explode called at ...
que faut-il faire ?
Merci d'avance