login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Hoe kan je XML opsplitsen (Opgelost)

Offline WouterPSV - 10/12/2010 19:41
Avatar van WouterPSVLid Hey,

Ik heb een mooi XML bestand gekregen met op dit moment 90 huizen.
Nu heb ik het al omgezet in een array dus krijg ik alles al los, maar kan ik dat ook op een of andere manier sorteren dat ik alle huizen apart kan oproepen.

Hieronder mijn XML

XML : XML file

Hoe ik tot mij Array kom:


  1. <?php
  2. function objectsIntoArray($arrObjData, $arrSkipIndices = array())
  3. {
  4. $arrData = array();
  5.  
  6. // if input is object, convert into array
  7. if (is_object($arrObjData)) {
  8. $arrObjData = get_object_vars($arrObjData);
  9. }
  10.  
  11. if (is_array($arrObjData)) {
  12. foreach ($arrObjData as $index => $value) {
  13. if (is_object($value) || is_array($value)) {
  14. $value = objectsIntoArray($value, $arrSkipIndices); // recursive call
  15. }
  16. if (in_array($index, $arrSkipIndices)) {
  17. continue;
  18. }
  19. $arrData[$index] = $value;
  20. }
  21. }
  22. return $arrData;
  23. }
  24. ?>
  25.  
  26. <?php
  27. $xmlUrl = "XML/WONEN_20101210.xml"; // XML feed file/URL
  28. $xmlStr = file_get_contents($xmlUrl);
  29. $xmlObj = simplexml_load_string($xmlStr);
  30. $arrXml = objectsIntoArray($xmlObj);
  31.  
  32. //Alles laten zien
  33. print_r($arrXml);
  34.  
  35. //één bepaald onderdeel laten zien.
  36. //echo $arrXml['Object'][90]['ObjectDetails']['Adres']['Nederlands']['Straatnaam'];
  37.  
  38. ?>

4 antwoorden

Gesponsorde links
Offline Martijn - 11/12/2010 13:07
Avatar van Martijn Crew PHP gewoon in een databse schuiven? Daarna kun je er mee doen wat je wilt
Offline WouterPSV - 11/12/2010 16:37
Avatar van WouterPSV Lid Hoe wil je dat doen dan (A)
Offline MiST - 11/12/2010 17:28
Avatar van MiST Lid Als je al tot een array kan komen, kan je daar toch ook slechts 1 item uithalen?

Database is wel veel beter voor dit soort zaken. Hoe je dat moet doen moet je echter zelf eerst zoeken volgens de regels van sima.

Je kan misschien eens googlen: php database, php mysql, php sqlite, ...
Offline WouterPSV - 11/12/2010 19:44 (laatste wijziging 12/12/2010 23:27)
Avatar van WouterPSV Lid Nou ik krijg dagelijks zo'n file als update dus die wil ik graag kunnen uploaden en dan selecteren en klaar. Als ik alle in moeten laten dagelijks dan duurt dat veels te lang.

SOLVED::

  1. if (($xml = simplexml_load_file('http://whdesign.nl/WONEN_20101210.xml')))
  2. {
  3. foreach ($xml->Object as $object)
  4. {
  5. echo $object->ObjectDetails->Adres->Nederlands->Straatnaam . ' ' . $object->ObjectDetails->Adres->Nederlands->Huisnummer . '<br />';
  6. echo $object->ObjectDetails->Adres->Nederlands->Postcode . ' ' . $object->ObjectDetails->Adres->Nederlands->Woonplaats . '<br />';
  7. echo $object->ObjectDetails->Koop->Koopprijs . '<br /><br />';
  8. }
  9. }
Gesponsorde links
Je moet ingelogd zijn om een reactie te kunnen posten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.188s