[LA-technique] PHP ; Remplissage d'array avec foreach |
[ Thread Index |
Date Index
| More linuxarverne.org/technique Archives
]
Bonjour,
Ça fait un bon moment que je n'ai plus travaillé sur les tableaux et j'ai des
trous dans mes compétences...
Je veux remplir un array à partir d'un fichier xml. La structure du xml est la
suivante :
<?xml version="1.0" encoding="utf-8"?>
<cookbook version="59">
<recipe>
<title></title>
<preptime></preptime>
<cooktime></cooktime>
<ingredient>
<li></li>
</ingredient>
<recipetext>
<li></li>
</recipetext>
<url></url>
<imagepath></imagepath>
<imageurl></imageurl>
<quantity></quantity>
<rating>1</rating>
<nutrition>
</nutrition>
<li></li>
<comments>
<li></li>
</comments>
<totaltime></totaltime>
<description></description>
<source></source>
<video></video>
<category></category>
</recipe>
<recipe>
.../...
</recipe>
</cookbook>
J'ai écrit :
foreach($mycookfile->recipe as $key => $value) {
$mycookbook[][$key] = $value ;
}
Mais ça me fait un array comme ça :
Array
(
[0] => Array
(
[recipe] => SimpleXMLElement Object
(
[title] => Caponata
[preptime] => 10 minutes
[cooktime] => 10 minutes
[ingredient] => SimpleXMLElement Object
(
[li] => Array
(
[0] => 500 g d'aubergines en dés de 1 cm
.../...
[11] => Sel et poivre
)
)
etc.
Mon premier pb est que j'ai un niveau [recipe] inutile que je n'arrive pas à
supprimer. L'index numérique ma suffit largement.
Mon second est que je n'arrive pas à afficher le contenu d'une cellule du
tableau
echo $mycookbook[0]["recipe"]["title"];
n'affiche rien.
Enfin je voudrais remplilr un autre tableau avec uniquement le contenu de
category sans doublons, je ne trouve pas non plus.
Merci aux bonnes âmes...
--
Cordialement, Daniel Cartron
« J’imagine un cocu disant : “Ce qui m’exaspère, c’est de penser que ce
monsieur sait maintenant de quoi je me contentais. »
Sacha Guitry — Bloompott, exergue du chapitre 17
--
Liste de discussions techniques de LinuxArverne
http://wiki.linuxarverne.org/listes_de_diffusion