@9StarRu

Можно ли разделить файл на несколько файлов и дать им названия?

Имеется огромный XML файл со следующей структурой:

<?xml version="1.0" encoding="UTF-8"?>
<Catalog>
<Category>
<Name>Cat 1</Name>
<Site>...</Site>
<Site>...</Site>
<Site>...</Site>
</Category>
<Category>
<Name>Cat 2</Name>
<Site>...</Site>
<Site>...</Site>
<Site>...</Site>
</Category>
<Category>
<Name>Cat 3</Name>
<Site>...</Site>
<Site>...</Site>
<Site>...</Site>
</Category>
</Catalog>


Можно ли его разделить с помощью PHP на несколько файлов так, чтобы в каждом файле сохранялась одна категория?

Например так:

cat_1.php

<?xml version="1.0" encoding="UTF-8"?>
<Catalog>
<Category>
<Name>Cat 1</Name>
<Site>...</Site>
<Site>...</Site>
<Site>...</Site>
</Category>
</Catalog>


cat_2.php

<?xml version="1.0" encoding="UTF-8"?>
<Catalog>
<Category>
<Name>Cat 2</Name>
<Site>...</Site>
<Site>...</Site>
<Site>...</Site>
</Category>
</Catalog>


cat_3.php

<?xml version="1.0" encoding="UTF-8"?>
<Catalog>
<Category>
<Name>Cat 3</Name>
<Site>...</Site>
<Site>...</Site>
<Site>...</Site>
</Category>
</Catalog>


Получаем XML файл

$url = 'https://site.ru/file.xml';

$fp = fopen("file.xml", "w");
$ch = curl_init($url);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_FILE, $fp);
$res = curl_exec($ch);
curl_close($ch);
//var_dump($res);
$file = 'file.xml'; // файл XML

$read = simplexml_load_file($file); // получаем объект класса

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


Название файлам брать из названия категории <Name></Name>, чтобы каждый раз конкретные файлы отвечали за конкретные категории.

Подскажите можно ли реализовать и как?

Спасибо!
  • Вопрос задан
  • 68 просмотров
Пригласить эксперта
Ответы на вопрос 1
webinar
@webinar
Учим yii: https://youtu.be/-WRMlGHLgRg

Можно ли разделить файл на несколько файлов и дать им названия?

можно

Можно ли его разделить с помощью PHP на несколько файлов так, чтобы в каждом файле сохранялась одна категория?

можно

Подскажите можно ли реализовать и как?

Перегнать xml в массив, в цикле перебирая категории формировать новые xml файлы. Есть куча библиотек в помощь, в частности: php.net/manual/en/book.simplexml.php
Ответ написан
Ваш ответ на вопрос

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

Войти через TM ID
Похожие вопросы
Интерно Ростов-на-Дону
от 35 000 до 50 000 руб.
Ticketland.ru Москва
от 120 000 руб.
СиСорт Барнаул
от 40 000 до 115 000 руб.
22 янв. 2019, в 14:31
1000 руб./за проект
22 янв. 2019, в 14:17
1500 руб./за проект
22 янв. 2019, в 14:05
1000 руб./за проект