| Мой проект находится на стадии прочитать XML (Пример PHP может кому нужно):
Развернуть текст PHP код: <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta charset="UTF-8">
<title>Test</title>
</head>
<body>
<?php
//Файл test.xml содержит XML-документ с корневым элементом
//и, по крайней мере, элемент /[root]/title.
$file_name = 'admitad_products_20130304_005338.xml';
$file_name = 'admitad_products_20130304_012049.xml';
$file_name = 'admitad_products_20130304_014600.xml';
if (file_exists($file_name)) {
$xml = simplexml_load_file($file_name);
// $xml= $xml["shop"];
// парсим категории.... тут все понятно
foreach ($xml->shop->categories->category as $ind=> $one) {
echo $one." id = ".$one["id"]." ParentId = ".$one["parentId"]."<br />";
}
// парсим товары.... тут теный лес и без 0.5л нефиг сюда ходить
foreach ($xml->shop->offers->offer as $ind=> $one) {
// id, original_id, available и т.д. - ХЗ зачем они мне нужны?
echo "id = ".$one["id"]." original_id = ".$one["original_id"]." available = ".$one["available"]."";
//price+valute
echo " price = ".$one->price." currencyId = ".$one->currencyId."<br/>";
echo " name = ".$one->name."<br/>";
echo " url = ".$one->url."<br/>";
echo " picture = ".$one->picture."<br/>";
echo " thumbnail = ".$one->thumbnail."<br/>";
echo " picture_orig = ".$one->picture_orig."<br/>";
echo " price = ".$one->price."<br/>";
echo " pickup = ".$one->pickup."<br/>";
echo " store = ".$one->store."<br/>";
echo " local_delivery_cost = ".$one->local_delivery_cost."<br/>";
echo " delivery = ".$one->delivery."<br/>";
echo " vendorCode = ".$one->vendorCode."<br/>";
echo " model = ".$one->model."<br/>";
echo " vendor = ".$one->vendor."<br/>";
echo " categoryId = ".$one->categoryId."<br/>";
echo " description = ".$one->description."<br/>";
echo " oldprice = ".$one->oldprice."<br/>";
// Разбор параметров... Записаны в произвольной форме, как кому захотелось и запиалось... ХЗ куда их воткнуть
foreach ($one->param as $ind2=> $one2) {
echo $one2["name"]." = ".$one2;
}
echo "<br /><br />";
}
/* ПРИМЕРЫ:
<offer id="16246530" original_id="X13012999382v128" available="true">
<currencyId>RUB</currencyId>
<param name="Цвет">[A9100318]</param><param name="Размер">128</param><param name="Возраст">Детский</param><param name="Пол">Мужской</param>
<name>Брюки</name>
<url>http://ad.admitad.com/goto/b65561e43625fbeec8145f018a68af/?ulp=http%3A%2F%2Fmexx-shop.ru%2Fshop%2Fproduct%2Fbrjuki-mexx-k1acp002001318</url>
<picture>http://cdn.admitad.com/products/pictures/2775/7/7/77d361f2-X13012999382v128.jpg</picture>
<thumbnail>http://cdn.admitad.com/products/thumbnails/2775/0/4/04921f49-X13012999382v128.jpg</thumbnail>
<picture_orig>http://static3.ptecs.ru/P0/00/09/55/09/1b.jpg</picture_orig>
<price>1299.0</price>
<pickup>false</pickup>
<store>false</store>
<local_delivery_cost>250</local_delivery_cost>
<delivery>true</delivery>
<vendorCode>K1ACP002001318</vendorCode>
<model>Брюки</model>
<vendor>Mexx</vendor>
<categoryId>341</categoryId>
</offer>
<offer id="13872823" original_id="240913" available="false">
<currencyId>RUB</currencyId>
<param name="Цвет">розовый/черный</param><param name="Размер">38, 40, 42, 44, 46, 48</param><param name="Старая цена">2199.0</param><param name="Скидка">9</param>
<name>Платье None</name>
<url>http://ad.admitad.com/goto/84582bebef25fbeec8144a2f625b4f/?ulp=[[[http://www.quelle.ru/france/Woman_collection/Dresses/Short_dresses/Plate__m240913.html]]]</url>
<picture>http://cdn.admitad.com/products/pictures/515/4/e/4e82dd24-240913.jpg</picture>
<thumbnail>http://cdn.admitad.com/products/thumbnails/515/2/a/2a6a80c3-240913.jpg</thumbnail>
<picture_orig>http://www.quelle.ru/default/produkt-images/_w355_h302_t1/r/u/mmdb/0/3/c/682931_scoop.jpg</picture_orig>
<price>1999.0</price>
<oldprice>2199.00</oldprice>
<description>Платье. Атласная основа и контрастная сеточка. На груди отделка кружевом и лентами. Тонкие регулируемые съемные бретели. Потайная застежка-молния сбоку. На подкладке спереди. Длина ок. 109 см.</description>
<model>Платье</model>
<categoryId>1766</categoryId>
</offer>
*/
// print_r($xml);
} else {
exit('Не удалось открыть файл test.xml.');
}
?>
</body>
</html>
[свернуть] Честно блин... сложновато работать с XML без четких правил записи. Вроде магазины продают одно и то же... Но.... |
|