PHP|Débutant :: Forums

Advertisement

Besoin d'aide ? N'hésitez pas, mais respectez les règles

Vous n'êtes pas identifié(e).

#1 28-07-2011 22:37:51

realisateur
Membre
Inscription : 02-04-2010
Messages : 1

Fonction pour découper une chaine de caractères

Bonjour et encore merci à tous ceux qui ont déjà eu la gentillesse de m'aider dans mon appprentissage du PHP.

J'ai réussi à parser mon XML et dans la balise <description> je récupère des éléments de ce type:
<description>Au nord : Nuageux - 17° - pas de vent Au Sud : Soleil - 23° - vent 7kmh A l'Est : Soleil - 20° - vent 5kmh A l'Ouest : Ciel voilé - 19° - pas de vent<description>

Pour l'affichage je voudrais pouvoir afficher :

Au Nord : Nuageux - 17° - pas de vent
Au Sud : Soleil - 23° - vent 7kmh
A l'Est : Soleil - 20° - vent 5kmh
A l'Ouest : Ciel voilé - 19° - pas de vent

N'ayant pas de délimiteurs sur lesquels m'appuyer je pensais utiliser les occurrences "Nord", "Sud", "Est", "Ouest" qui sont présents dans toutes les descriptions de mes XML mais je ne sais pas par quel bout l'attraper.

Si vous pouviez m'aiguiller dans mes recherches, je vous en remercie.
realisateur
Embryon

Messages: 10
Inscription: 02 Avr 2010, 14:28
Haut

Hors ligne

#2 29-07-2011 07:09:20

Maljuna Kris
Infantimigulo
Lieu : Douarnenez 29100 Breizh Izel
Inscription : 08-05-2009
Messages : 2 453
Site Web

Re : Fonction pour découper une chaine de caractères

Saluton,
Si les deux points ne se trouvent pas ailleurs tu peux faire comme ça:

<?php
$descriptions= array("Au Nord : Nuageux - 17° - pas de vent",
                     "Au Sud : Soleil - 23° - vent 7kmh",
                     "A l'Est : Soleil - 20° - vent 5kmh",
                     "A l'Ouest : Ciel voilé - 19° - pas de vent");
foreach($descriptions as $description){
    list($deb,$fin)=explode(":",$description);
    echo '<b>',$deb,' : </b>',$fin,'<br />';
    }    

Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy

Hors ligne

#3 29-07-2011 09:00:50

Maljuna Kris
Infantimigulo
Lieu : Douarnenez 29100 Breizh Izel
Inscription : 08-05-2009
Messages : 2 453
Site Web

Re : Fonction pour découper une chaine de caractères

Désolé, c'est n'importe quoi, je croyais que la séparation des items était déjà réalisée en <xml>
J'avais lu trop vite.
En fait, c'est plus simple

<?php
$descriptions="Au Nord : Nuageux - 17° - pas de vent Au Sud : Soleil - 23° - vent 7kmh A l'Est : Soleil - 20° - vent 5kmh A l'Ouest : Ciel voilé - 19° - pas de vent";
$search= array("Au Nord :","Au Sud :","A l'Est :","A l'Ouest :");
$replace=array("<br /><b>Au Nord :</b>","<br /><b>Au Sud :</b>","<br /><b>A l'Est :</b>","<br /><b>A l'Ouest :</b>");
echo str_replace($search,$replace,$descriptions);      

Gloire à qui n'ayant pas d'idéal sacro-saint,
Se borne à ne pas trop emmerder ses voisins. G. Brassens Don Juan 1976.
Avĉjo MoKo kantas
La chaîne YouTube MoKo Papy

Hors ligne

Pied de page des forums