Задать вопрос

Как изменить простейший парсер для xml?

Добрый день, уважаемое сообщество.

Прошу подсказать, как внести изменения в простейший парсер, чтобы выбирать необходимые элементы из .xml файла? Я не являюсь программистом, код парсера взят после некоторых поисков на ресурсе php.net, но на этом мои "знания" в области php закончились ((

Мне необходимо вывести результаты спортивных соревнований учеников спортшколы за несколько лет, поэтому код парсера желательно, чтобы был минимальным. Все остальные задачи решены, требуется только внедрение этой функции. БД уже сформирована, поэтому внести изменения не представляется возможным.

Ниже пример исходного файла и код парсера, а также желаемые результаты. Заранее всем спасибо за помощь.

Исходник:
https://site.ru/source_file.xml

<puple>
<dlina_puple col_popytok="7">2.95</dlina_puple>
<vysota_puple col_popytok="4">1.35</vysota_puple>
</puple>


Парсер:

<?php
/* %%%%%%%%%%%%%%%%%% */
$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "https://site.ru/source_file.xml");
curl_setopt($ch, CURLOPT_HEADER, false);

curl_exec($ch);

curl_close($ch);
/* %%%%%%%%%%%%%%%%%% */
?>


Как выводит:

2.951.35

Как надо:

2.95
1.35

Как в идеале (но не обязательно):

2.95 / 7
1.35 / 4

С уважением,
Юрий
  • Вопрос задан
  • 176 просмотров
Подписаться 3 Простой 6 комментариев
Помогут разобраться в теме Все курсы
  • Skillbox
    Веб-разработчик на PHP
    9 месяцев
    Далее
  • Хекслет
    PHP-разработчик
    10 месяцев
    Далее
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
Решения вопроса 1
ematveev
@ematveev
PHP разработчик / руководитель / писатель
$url = "https://site.ru/source_file.xml";
if ($response = file_get_contents($url) and !empty($response) and $xml = new SimpleXMLElement($response)) {
    echo $xml->dlina_puple . " / " .  (int)$xml->dlina_puple[0]->attributes()->col_popytok . "<br />";
    echo $xml->vysota_puple . " / " .  (int)$xml->vysota_puple[0]->attributes()->col_popytok . "<br />";
} else {
    echo 'Ошибка открытия файла XML';
}
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы
FoodSoul Калининград
от 180 000 до 250 000 ₽
IT-Spirit Москва
от 230 000 до 320 000 ₽
от 200 000 до 290 000 ₽