Problème avec un explode
Posté : 16 mars 2009, 21:53
Bonsoir,
Je souhaiterai décomposer une chaîne de caractères avec deux séparateurs : *** puis ,.
Exemple de chaîne : http://www.monsite.com/gallery/paris.jp ... n.jpg,Lyon
En gros, il s'agit de tirer au sort une image dans une liste et de provoquer son affichage dans une page en partant de son Url et de son titre. Je pense que c'est plutôt simple comme exercice.
Seulement, je me heurte au problème de l'explode qui ne fonctionne pas.
Voici mon code :
Auriez-vous une idée ?
Je planche depuis des heures sur ce problème, sans trouver de solution...
Merci pour votre aide.
Alexandre
Je souhaiterai décomposer une chaîne de caractères avec deux séparateurs : *** puis ,.
Exemple de chaîne : http://www.monsite.com/gallery/paris.jp ... n.jpg,Lyon
En gros, il s'agit de tirer au sort une image dans une liste et de provoquer son affichage dans une page en partant de son Url et de son titre. Je pense que c'est plutôt simple comme exercice.
Seulement, je me heurte au problème de l'explode qui ne fonctionne pas.
Voici mon code :
$number = 2;
//Ici, je spécifie le nombre d'images attendues avant leur tirage au sort
$string = 'http://www.monsite.com/gallery/paris.jpg,Paris***http://www.monsite.com/gallery/lyon.jpg,Lyon,***http://www.monsite.com/gallery/marseille.jpg,marseille***http://www.monsite.com/gallery/lille.jpg,Lille';
// Ici, je veux scinder les deux chaînes en utilisant le séparateur *** puis scinder la sous chaîne en utilisant le séparateur ,
$images = explode("***", $string);
// A priori, ici les chaînes sont séparées
foreach($images as $image) {
list($url, $title) = explode(",", $image);
// Là, je mets l'explode sur la virgule pour séparer l'Url de l'adresse
$gallery = '<li><img src="'.$url.'" alt="'.$title.'" title="'.$title.'" /></a></li>';
}
// Je place cette image dans une liste, plus élégante en Html !!!
echo $gallery[rand (0, $number)];;
Hélas, ça me renvoue une chaîne vide !!!Auriez-vous une idée ?
Je planche depuis des heures sur ce problème, sans trouver de solution...
Merci pour votre aide.
Alexandre