@9StarRu

Как перейти к следующему объекту в xml после прочтения первого?

Получаю данные из XML файла и сохраняю в базу данных.

$read = simplexml_load_file($file); // получаем объект класса
$xml = $read->Category->Site; // $xml - объект-массив, вложенные теги - его свойства
$count = count($xml); // кол-во элементов массива

for($i = 0; $i < $count; $i++){
... код ...

$values .= "('$id_xml', '$date_xml','$title_xml','$link_xml'),";
/* заносим данные в БД если накопилось 1000 записей при подготовке запроса*/
if($i % 1000 == 0)
{
$values[strlen($values)-1]=' ';
$res = mysql_query("$Query $values $ODKU");
$values = "";
}

}
/* СОХРАНЯЮ В БАЗУ ПОЛУЧЕННЫЙ РЕЗУЛЬТАТ */
if(strlen($values)>0)
{
$values[strlen($values)-1]=' ';
/* заносим данные в БД */
$res = mysql_query("$Query $values $ODKU");    
}

echo 'Done';


Файл XML имеет следующий вид

<?xml version="1.0" encoding="UTF-8"?>
<Catalog>
<Category>
<Name>Категория 1</Name>
<Site>...</Site>
<Site>...</Site>
<Site>...</Site>
</Category>
<Category>
<Name>Категория 2</Name>
<Site>...</Site>
<Site>...</Site>
<Site>...</Site>
</Category>
<Category>
<Name>Категория 3</Name>
<Site>...</Site>
<Site>...</Site>
<Site>...</Site>
</Category>
</Catalog>


У меня все работает до тех пор, когда первая категория заканчивается, скрипт не переходит ко второй категории $xml = $read->Category->Site;
Как научить скрипт при завершении получения данных из первой категории, переходить к следующей и так до конца?

Помогите, пожалуйста!
  • Вопрос задан
  • 86 просмотров
Решения вопроса 1
@grinat
перебрать его надо
foreach($read->Category as $cat) {
$site = $cat->Site[0]
}
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
Таларии Москва
от 100 000 руб.
ADRU Новосибирск
от 100 000 руб.
ZAIMOTEKA Нижний Новгород
До 150 000 руб.
23 марта 2019, в 23:45
5000 руб./за проект
23 марта 2019, в 23:33
800 руб./за проект
23 марта 2019, в 21:08
1500 руб./за проект