Hi,
I wil categorieën uit een XML feed halen. Dit lukt over het algemeen prima, tot deze feed waar ik mee bezig bent. Hier staat dit in:
<categories>
<category path="Kaas">Kaas</category>
<category path="Smeltkaas">Smeltkaas</category>
</categories>
Hoe krijg ik Smeltkaas eruit?
Merk staat in de feed als property, die kan ik eruit halen met:
$brand = $product->xpath('./properties/property[@name="brand"]/value');
Maar nu loop ik vast.
Iemand die dit weet?
Alvast bedankt!
- Element uit feed halen XML
-
18-03-2016, 12:34 #1
- Berichten
- 4.961
- Lid sinds
- 17 Jaar
Element uit feed halen XML
-
In de schijnwerper
-
31-03-2016, 12:58 #2
- Berichten
- 1.001
- Lid sinds
- 17 Jaar
Re: Element uit feed halen XML
$result = $xml->xpath("//category[@path='Smeltkaas']");
-
31-03-2016, 15:58 #3
- Berichten
- 4.961
- Lid sinds
- 17 Jaar
Re: Element uit feed halen XML
-
31-03-2016, 16:13 #4
- Berichten
- 301
- Lid sinds
- 17 Jaar
Re: Element uit feed halen XML
simplexml_load_file de feed en var_dump dit eens.
-
31-03-2016, 16:25 #5
- Berichten
- 4.961
- Lid sinds
- 17 Jaar
Re: Element uit feed halen XML
Ha Mark,
Dat doe ik inderdaad:
$XML = simplexml_load_file($XML_file);
foreach($XML->children() as $product) {
bla bla
}
En op bla bla wil ik dus <category path="Smeltkaas">Smeltkaas</category> die kunnen ophalen, zodat ik ze kan wegschrijven naar een database.
-
31-03-2016, 16:26 #6
- Berichten
- 301
- Lid sinds
- 17 Jaar
Re: Element uit feed halen XML
Als je $XML in een var_dump zet zie je hoe je het kunt uitlezen inclusief attributes.
-
31-03-2016, 16:31 #7
- Berichten
- 4.961
- Lid sinds
- 17 Jaar
Re: Element uit feed halen XML
Uhm, enige wat ik dan zie is "string(108)"
Edit, deed iets verkeerd
-
31-03-2016, 16:43 #8
- Berichten
- 4.961
- Lid sinds
- 17 Jaar
-
31-03-2016, 17:35 #9
- Berichten
- 102
- Lid sinds
- 12 Jaar
Re: Element uit feed halen XML
Hier heb je wel wat aan;
<?php
$string = <<<XML
<a>
<foo name="one" game="lonely">1</foo>
</a>
XML;
$xml = simplexml_load_string($string);
foreach($xml->foo[0]->attributes() as $a => $b) {
echo $a,'="',$b,"\"\n";
}
?>
-
31-03-2016, 17:46 #10
- Berichten
- 4.961
- Lid sinds
- 17 Jaar
Re: Element uit feed halen XML
Dan moet ik alsnog namen opgeven? Aangezien het om honderden verschillende categorieën gaat is dat niet mogelijk...
-
31-03-2016, 23:30 #11
- Berichten
- 102
- Lid sinds
- 12 Jaar
Re: Element uit feed halen XML
Tuurlijk niet; in jouw geval;
$path = '';
foreach($xml->categories as $cat){
$attr= $cat->attributes();
$path.= $attr['path'];
}
-
01-04-2016, 07:57 #12
- Berichten
- 4.961
- Lid sinds
- 17 Jaar
Re: Element uit feed halen XML
Helaas, krijg nog geen resultaat:
Code:$XML_file = "file.xml"; $XML = simplexml_load_file($XML_file); foreach($XML->children() as $product) { $path = ''; foreach($product->categories as $cat){ $attr= $cat->attributes(); $path.= $attr['path']; } } echo $path;
-
02-04-2016, 23:23 #13
- Berichten
- 102
- Lid sinds
- 12 Jaar
Re: Element uit feed halen XML
Kan je de XML structuur hier neer zetten;
ik denk dat foreach($XML->children() as $product) { sowieso niet werkt op die manier.
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic