Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 17.09.2015
Сообщений: 8
1

XML в массив ?

04.09.2019, 19:45. Показов 2121. Ответов 3
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Считываю XLM в $contents
на echo $contents получаю:

XML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
<?xml version="1.0" encoding="UTF-8"?>
<pvzlist partner="BOXBERRY" count="24">
   <point code="76131">
       <address>150030, Ярославль г, Московский пр-кт, д.115</address>
       <town>Ярославль</town>
       <phone>8-800-222-80-00</phone>
       <worktime>пн-пт: 10.00-18.30, сб-вс: 10.00-17.00</worktime>
       <name>Ярославль Московский_7613_С</name>
       <GPS>57.597772,39.872955</GPS>
       <description>DESC1</description>
   </point>
       <point code="76141">
       <address>150014, Ярославль г, Толбухина пр-кт, д.40</address>
       <town>Ярославль</town>
       <phone>8-800-222-80-00</phone>
       <worktime>пн-пт: 09.00-19.00, сб: 11.00-16.00</worktime>
       <name>Ярославль Толбухина_7614_С</name>
       <GPS>57.627277,39.858348</GPS>
       <description>DESC2</description>
</point>
...
</pvzlist>

Дальше что то туплю... Перепробовал и simplexml_load_string и json_decode
Чего то никак не врубаюсь как мне превратить это в обычный массив ?

Чтобы потом обработать все в стиле:
PHP
1
2
3
4
5
6
foreach ($content as $value) {
   echo $value["code"];
   echo $value["town"];
   echo $value["phone"];
   и т.д.
}
ну или любым другим способом получить доступ ко всем элементам ...

Добавлено через 6 минут
Особо непонятно как "запихать" в переменные данные из вот этих тегов:

Код
partner="BOXBERRY" count="24"
и
Код
code="76131"
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
04.09.2019, 19:45
Ответы с готовыми решениями:

Массив: Получить из XML-файла данные элементов <name> и <price> и поместить в массив
Доброго всем времени суток! Ребята, подскажите пожалуйста в вопросе. Есть некий xml файл,...

Выгрузка в XML файл результатов запроса. Создание xml схемы с имеющегося xml файла
Доброго времени суток. Имеется необходимый для загрузки пример XML файла и из него необходимо...

Ко всем файлам добавилось .xml, теперь они в формате ***.xls.XML, ***doc.XML (изначально в Word и Excel)
при копировании с одного ноутбука на другом (изначально на новом не было офиса, м.б. из-за этого...

Xml в массив
Есть скрипт, принимает данные со стороннего ресурса. Данные могут передаваться в формате JSON или...

3
965 / 527 / 244
Регистрация: 20.05.2015
Сообщений: 776
04.09.2019, 20:37 2
Лучший ответ Сообщение было отмечено anstrem как решение

Решение

anstrem, здравствуйте.

PHP
1
2
3
4
5
6
7
8
9
10
11
<?php
 
$xml = simplexml_load_string($xmlSource);
 
echo $xml['partner']; // BOXBERRY
echo $xml['count']; // 24
 
echo $xml->point[0]['code']; // 76131
echo $xml->point[1]['code']; // 76141
 
echo $xml->point[0]->address; // 150030, Ярославль г, Московский пр-кт, д.115
1
Эксперт PHP
3877 / 3218 / 1350
Регистрация: 01.08.2012
Сообщений: 10,859
04.09.2019, 20:52 3
Лучший ответ Сообщение было отмечено Строитель как решение

Решение

Дополню, что по всем point'ам можно через foreach пройтись.

PHP
1
2
3
4
$xml = simplexml_load_string($xml_string);
 
foreach($xml->point as $point)
    echo $point['code'] . ' | ' . $point->description . '<br>';
1
0 / 0 / 0
Регистрация: 17.09.2015
Сообщений: 8
04.09.2019, 21:46  [ТС] 4
evikza

Спасибо тебе большое добрый человек

Добавлено через 22 минуты
Jodah
И вам спасибо!
0
04.09.2019, 21:46
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
04.09.2019, 21:46
Помогаю со студенческими работами здесь

Из XML в массив
Доброго дня! В общем ситуация такая, имеется XML файл вида &lt;?xml version=&quot;1.0&quot;?&gt; &lt;SIGMET&gt; ...

XML и трехмерный массив
Здравствуйте. Подскажите как записать трехмерный массив в XML файл? Затем нужно проделать обратное...

Создать двумерный массив из XML
Добрый день, не могу понять как преобразвать xml в массив с помощью Linq Есть XML-строка вида:...

Проблемы с чтением XML в массив
Есть XML файл: &lt;?xml version=&quot;1.0&quot; codepage=&quot;utf-8&quot;?&gt; &lt;GALLERY&gt; &lt;EVENT name=&quot;pic0&quot;...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru