[PHP] Additionner les valeurs d'une même var
Résolu
canarder
Messages postés
2034
Statut
Membre
-
canarder Messages postés 2034 Statut Membre -
canarder Messages postés 2034 Statut Membre -
Bonjour, j'ai un problème en dom xml.
Voici un exemple de code xml :
Je veux récupérer toutes les valeurs de combien et les additionner, je fais comment ?
Pour lire le contenu d'un attribut j'utilise :
Est-ce que $nombre aura plusieurs valeurs ?
Est-ce que ce code suffit (j'ai pas testé :p) ?
Merci pour vos réponses.
????? canarder ?????
Le Renard qui règne sur le WEB : Firefox
Voici un exemple de code xml :
<fruit name="pomme" combien="1"></fruit> <fruit name="poire" combien="6"></fruit> <fruit name="cerise" combien="24"></fruit>
Je veux récupérer toutes les valeurs de combien et les additionner, je fais comment ?
Pour lire le contenu d'un attribut j'utilise :
$fruit = $dom->getElementsByTagName("fruit");
foreach($fruit as $nombre)
{
if ($nombre->hasAttribute("combien")) {
echo "<p>Il y a <b>".$nombre->getAttribute("combien")."</b> fruits.</p>";
}
}
Est-ce que $nombre aura plusieurs valeurs ?
Est-ce que ce code suffit (j'ai pas testé :p) ?
Merci pour vos réponses.
????? canarder ?????
Le Renard qui règne sur le WEB : Firefox
9 réponses
-
j'arrive à avoir tous les nombres à la suite donc la variable a plusieurs valeurs mais comment toutes les additionner ?
-
Bonjour,
$fruit = $dom->getElementsByTagName("fruit"); $total = 0 ; foreach($fruit as $nombre) { if ($nombre->hasAttribute("combien")) { $total += $nombre->getAttribute("combien") ; } } echo "total : $total";
$nombre prendra comme valeur, tour à tour tout les éléments avec le tagname fruit.
-
Non ça ne marche pas l'echo se répète
$bank = $dom->getElementsByTagName("item"); $total = 0 ; foreach($bank as $nbrBank) { if ($nbrBank->hasAttribute("count")) { $total += $nbrBank->getAttribute("count") ; echo "Nombre d'objet : ".$total."<br />\n"; } }
EDIT 1 : ah non la dernière valeur est la bonne je pense, comment on l'obtient ? j'ai vu max(); quelque part ...
????? canarder ?????
Le Renard qui règne sur le WEB : Firefox -
-
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question -
up c'est urgent je dois finir mon script aujourd'hui
-
Copie mon code et non ta version, le echo est à l'extérieur de la boucle foreach :
$fruit = $dom->getElementsByTagName("fruit"); $total = 0 ; foreach($fruit as $nombre) { if ($nombre->hasAttribute("combien")) { $total += $nombre->getAttribute("combien") ; } } echo "total : $total";
-
mais moi c'est pas ce code là ^^ bon
-- je vais traduire plus tard je peux pas là
๑۩۞۩๑ canarder ๑۩۞۩๑
Le Renard qui règne sur le WEB : Firefox -
A la fin de la boucle, tu as la variable $total qui est remplis avec ton total.
-