IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

PHP & Base de données Discussion :

explode au dernier slash


Sujet :

PHP & Base de données

  1. #1
    Nouveau membre du Club
    Inscrit en
    Février 2009
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 38
    Points : 26
    Points
    26
    Par défaut explode au dernier slash
    Bonjour à tous,

    Je cherche à récupérer le nom de l'image après le dernier slash, le script ci-dessous marche bien :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $string = "http://xxxxxxxx.com/xxxxx/xxxx/catalog/images/pr_p/2/1/4/4/6/6/5/2144665a.jpg";
     
    $val = explode('/', $string);
    $val = $val[15];
    L'exemple fonctionne lorsque on connaît le nombre de slash ( ici [15] ), comment faire fonctionner cette fonction ( ou peut être existe-t-il une autre ) sans faire une usine à gaz en calculant le nombre de slash qui prendrait en compte ce qui se trouve après le dernier slash ?

    Merci encore de votre aide.

  2. #2
    Nouveau membre du Club
    Inscrit en
    Février 2009
    Messages
    38
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 38
    Points : 26
    Points
    26
    Par défaut
    Bon j'ai fini par faire :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $string = "http://xxxxxxxx.com/xxxxx/xxxx/catalog/images/pr_p/2/1/4/4/6/6/5/2144665a.jpg";
    $count = count($string)-1;
    $val = explode('/', $string);
    $val = $val[$count];

  3. #3
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Bonjour,

    Ton code n'est pas bon, il n'y a pas autant de caractères que d'occurences dans la tableau $val.

    Voici le code correct en utilisant explode :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $string = "http://xxxxxxxx.com/xxxxx/xxxx/catalog/images/pr_p/2/1/4/4/6/6/5/2144665a.jpg";
    $val = explode('/', $string);
    $count = count($val);
    $val = $val[$count - 1];

  4. #4
    Membre éprouvé Avatar de vorace
    Homme Profil pro
    Développeur
    Inscrit en
    Août 2010
    Messages
    573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Août 2010
    Messages : 573
    Points : 915
    Points
    915
    Par défaut
    utilise pop_array()
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $vald = pop_array($val);
    Développeur informatique contrarié...

  5. #5
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    dites pas n'importe quoi basename est la pour ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $string = "http://xxxxxxxx.com/xxxxx/xxxx/catalog/images/pr_p/2/1/4/4/6/6/5/2144665a.jpg";
    echo basename($string);

  6. #6
    Expert éminent sénior

    Homme Profil pro
    Développeur Web
    Inscrit en
    Septembre 2010
    Messages
    5 383
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Septembre 2010
    Messages : 5 383
    Points : 10 411
    Points
    10 411
    Par défaut
    Citation Envoyé par vorace Voir le message
    utilise pop_array()
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    $vald = pop_array($val);
    Effectivement suite à l'explode array_pop serait le plus simple pour récupérer le dernier élément du tableau.

    Mais bon comme dit stealth35, pour récupérer le nom d'un fichier dans une chaine, il y a une fonction dédiée.

  7. #7
    Membre éprouvé Avatar de vorace
    Homme Profil pro
    Développeur
    Inscrit en
    Août 2010
    Messages
    573
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur

    Informations forums :
    Inscription : Août 2010
    Messages : 573
    Points : 915
    Points
    915
    Par défaut
    Citation Envoyé par stealth35 Voir le message
    dites pas n'importe quoi basename est la pour ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $string = "http://xxxxxxxx.com/xxxxx/xxxx/catalog/images/pr_p/2/1/4/4/6/6/5/2144665a.jpg";
    echo basename($string);
    du calme, on est juste là pour aider...pas pour se faire incendier !!!
    Développeur informatique contrarié...

Discussions similaires

  1. [MVC] Dernier slash dans URL
    Par andlio dans le forum Spring Web
    Réponses: 4
    Dernier message: 30/05/2013, 13h23
  2. [URL rewriting] Dernier slash
    Par windmastr26 dans le forum Apache
    Réponses: 4
    Dernier message: 29/12/2011, 16h01
  3. Utiliser explode en partant du dernier élément
    Par Marc22 dans le forum Langage
    Réponses: 3
    Dernier message: 23/03/2010, 09h28
  4. [RegEx] Récupérer le dernier élément entre slashes
    Par pp_le_moko dans le forum Langage
    Réponses: 8
    Dernier message: 09/11/2009, 13h01
  5. Réponses: 5
    Dernier message: 29/08/2008, 18h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo