FrazeColder
Lt. Commander
- Registriert
- Okt. 2013
- Beiträge
- 1.721
Moin zusammen,
ich stehe leider vor einem Problem... Und zwar möchte ich eine XML Datei bearbeiten in welcher folgende Attribute rausfliegen sollen: sku, qty, priceUSD, priceGBP, priceAUD und priceSGD.
Die XML Datei ist folgende (hier noch im CSV): http://www.onlinekeystore.com/feed.php?key=GmYAQ4RcndpD3aPkjnWkJf4r&dl
Daraus habe ich eine XML Datei gemacht, die dann so aussieht:
Nun habe ich aber das Problem. Und zwar bekomme ich mit meinem Code folgendes heraus:
(XML ist unten) Manchmal entfernt er die Attribute und manchmal nicht... Wieso das?
Hat da jemand eine Idee oder Lösung?
Mit freundlichen Grüßen und Vielen Dank
ich stehe leider vor einem Problem... Und zwar möchte ich eine XML Datei bearbeiten in welcher folgende Attribute rausfliegen sollen: sku, qty, priceUSD, priceGBP, priceAUD und priceSGD.
Die XML Datei ist folgende (hier noch im CSV): http://www.onlinekeystore.com/feed.php?key=GmYAQ4RcndpD3aPkjnWkJf4r&dl
Daraus habe ich eine XML Datei gemacht, die dann so aussieht:
Code:
<products>
<product>
<sku>SKU3223</sku>
<title>BiT Evolution (STEAM)</title>
<url>http://www.onlinekeystore.com/buy-bit-evolution-steam-pc-cd-keys.html</url>
<qty>2147483647</qty>
<priceEUR>0.99</priceEUR>
<priceUSD>1.04</priceUSD>
<priceGBP>0.85</priceGBP>
<priceAUD>1.45</priceAUD>
<priceSGD>1.51</priceSGD>
</product>
</products>
Nun habe ich aber das Problem. Und zwar bekomme ich mit meinem Code folgendes heraus:
(XML ist unten) Manchmal entfernt er die Attribute und manchmal nicht... Wieso das?
Code:
$dom = new DOMDocument();
$dom->load('data/onlinekeystore.xml');
$root = $dom->documentElement;
$skuMarker = $root->getElementsByTagName('sku');
for($i = 0; $i < $skuMarker->length; $i++){
$sku = $skuMarker->item($i);
$skuMarker->item($i)->parentNode->removeChild($sku);
}
$qtyMarker = $root->getElementsByTagName('qty');
for($j = 0; $j < $qtyMarker->length; $j++){
$qty = $qtyMarker->item($j);
$qtyMarker->item($j)->parentNode->removeChild($qty);
}
$priceUSDMarker = $root->getElementsByTagName('priceUSD');
for($k = 0; $k < $priceUSDMarker->length; $k++){
$priceUSD = $priceUSDMarker->item($k);
$priceUSDMarker->item($k)->parentNode->removeChild($priceUSD);
}
$priceGBPMarker = $root->getElementsByTagName('priceGBP');
for($l = 0; $l < $priceGBPMarker->length; $l++){
$priceGBP = $priceGBPMarker->item($l);
$priceGBPMarker->item($l)->parentNode->removeChild($priceGBP);
}
$priceAUDMarker = $root->getElementsByTagName('priceAUD');
for($m = 0; $m < $priceAUDMarker->length; $m++){
$priceAUD = $priceAUDMarker->item($m);
$priceAUDMarker->item($m)->parentNode->removeChild($priceAUD);
}
$priceSGDMarker = $root->getElementsByTagName('priceSGD');
for($n = 0; $n < $priceSGDMarker->length; $n++){
$priceSGD = $priceSGDMarker->item($n);
$priceSGDMarker->item($n)->parentNode->removeChild($priceSGD);
}
Code:
<product>
<title>Gears of War CD KEY (RETAIL)</title>
<url>http://www.onlinekeystore.com/gears-of-war-cd-key-retail.html</url>
<priceEUR>6.99</priceEUR>
</product>
<product>
<sku>SKU9</sku>
<title>Battlefield 2142 Deluxe Edition (ORIGIN)</title>
<url>http://www.onlinekeystore.com/battlefield-2142-deluxe-edition-origin.html</url>
<qty>0</qty>
<priceEUR>9.99</priceEUR>
<priceUSD>10.53</priceUSD>
<priceGBP>8.55</priceGBP>
<priceAUD>14.58</priceAUD>
<priceSGD>15.22</priceSGD>
</product>
Hat da jemand eine Idee oder Lösung?
Mit freundlichen Grüßen und Vielen Dank