Простая обработка XML файлов на PHP
Самый простой способ работать с XML в PHP — использовать функцию simplexml_load_file. Функция возвращает значение false в случае ошибки чтения и массив DOM в случае успеха. Не применимо к большим файлам, ибо весь файл в данном случае грузится в память.
Пример файла XML:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 |
<?xml version="1.0" encoding="windows-1251" ?> <tables> <table name="org"> <reqtable name="users"> <fromkey>id</fromkey> <tokey>orgid</tokey> </reqtable> <reqtable name="places"> <fromkey>id</fromkey> <tokey>orgid</tokey> </reqtable> <reqtable name="equipment"> <fromkey>id</fromkey> <tokey>orgid</tokey> </reqtable> </table> </tables> |
Пример файла на PHP — обработчик:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
if (file_exists('delete.xml')) { $xml = simplexml_load_file('delete.xml'); var_dump($xml); // вывод структуры "для наглядности" echo "<hr>"; foreach($xml->table as $data) { echo "Обработка таблицы: $data[name]<br/>"; foreach($data->reqtable as $rectable) { echo "- зависимость $rectable[name] (в $rectable[name].$rectable->tokey нет значений $data[name].$rectable->fromkey)<br/>"; }; }; } else { exit('Ошибка открытия схемы delete.xml'); } |
Здравствуйте. Помогите пожалуйста. Получаю ответ, на странице выводиттся все, но только подряд, без строк, колонок, кучей как бы. Я бы хотел переменным назначать данные, для последующей обработки. Спасибо.
<?php
$xml='
price
MegaParts
a1B4vP
35197
‘;
$data = array(‘xml’ => $xml);
$address=»http://adeo.pro/pricedetals2.php»;
$ch = curl_init($address);
curl_setopt($ch, CURLOPT_HEADER, 0);
curl_setopt($ch, CURLOPT_RETURNTRANSFER,1);
curl_setopt($ch, CURLOPT_POST,1);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
$result=curl_exec($ch);
echo $result;
?>
Постучитесь на скайп pvtuning . Из комментария мало что понятно.