Разбор XML из URL-адреса и преобразование в таблицу с помощью PHP

Я пытаюсь взять следующий xml с этого URL-адреса http://r7j8v4x4.map2.ssl.hwcdn.net/NOD_R.xml и сделать таблицу с данными. Я подтвердил, что могу получить данные с помощью print_r ($ xml); но я не могу получить данные для сброса в таблицу. Это то, что у меня есть до сих пор, что, вероятно, неверно. Может ли кто-нибудь помочь мне с правильным кодом для использования?

<?php
$url = "http://r7j8v4x4.map2.ssl.hwcdn.net/NOD_R.xml";
$xml = simplexml_load_file($url);
?>
<table>
  <thead>
    <tr>
      <col><span style = "font-weight:bold">Day</span></col>
  &nbsp;
  &nbsp;

  <col><span style = "font-weight:bold">Time(Eastern)</span></col>
  &nbsp;
  &nbsp;
  <col><span style = "font-weight:bold">Reservoir Elev. (behind dam)*</span</col>
  &nbsp;
  &nbsp;
  <col><span style = "font-weight:bold">Tailwater Elev. (below dam)*</span></col>
  &nbsp;
  &nbsp;
  <col><span style = "font-weight:bold">Avg Hourly Discharge*</span></col>
</tr>
</thead>
<tbody>

<?php foreach ($xml->RESULTSET->ROW as $obs) :?>
<tr>
  <td><?php echo $obs->obs_day; ?></td>
  <td><?php echo $obs->obs_hr; ?></td>
  <td><?php echo $obs->upstream_elev; ?></td>
  <td><?php echo $obs->downstream_elev; ?></td>
  <td><?php echo $obs->avg_hourly_discharge; ?></td>
</tr>
    <?php endforeach; ?>
  </tbody>
</table>
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Symfony Station Communiqué - 7 июля 2023 г
Symfony Station Communiqué - 7 июля 2023 г
Это коммюнике первоначально появилось на Symfony Station .
Оживление вашего приложения Laravel: Понимание режима обслуживания
Оживление вашего приложения Laravel: Понимание режима обслуживания
Здравствуйте, разработчики! В сегодняшней статье мы рассмотрим важный аспект управления приложениями, который часто упускается из виду в суете...
Установка и настройка Nginx и PHP на Ubuntu-сервере
Установка и настройка Nginx и PHP на Ubuntu-сервере
В этот раз я сделаю руководство по установке и настройке nginx и php на Ubuntu OS.
Коллекции в Laravel более простым способом
Коллекции в Laravel более простым способом
Привет, читатели, сегодня мы узнаем о коллекциях. В Laravel коллекции - это способ манипулировать массивами и играть с массивами данных. Благодаря...
Как установить PHP на Mac
Как установить PHP на Mac
PHP - это популярный язык программирования, который используется для разработки веб-приложений. Если вы используете Mac и хотите разрабатывать...
0
0
16
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Поскольку XML содержит 2 элемента <RESULTSET>, RESULTSET->ROW просто выбирал первый из них. Так что измените это на RESULTSET[1]->ROW, и вы получите данные после.

Вам также необходимо убедиться, что вы используете один и тот же регистр для каждого имени элемента ...

<?php foreach ($xml->RESULTSET[1]->ROW as $obs) :?>
<tr>
  <td><?php echo $obs->OBS_DAY; ?></td>
  <td><?php echo $obs->OBS_HR; ?></td>
  <td><?php echo $obs->UPSTREAM_ELEV; ?></td>
  <td><?php echo $obs->DOWNSTREAM_ELEV; ?></td>
  <td><?php echo $obs->AVG_HOURLY_DISCHARGE; ?></td>
</tr>
<?php endforeach; ?>

Это сработало, чтобы получить данные! Спасибо. После того, как данные оказались в таблице, на странице между ними нет пробелов. Как я могу вставить пробел между столбцами с данными, как в заголовках столбцов таблицы?

Gonzo1982 12.04.2018 16:52

Вы используете <col> в заголовках, вероятно, вам следует использовать <td>

Nigel Ren 12.04.2018 16:58

Идеально! Спасибо!

Gonzo1982 12.04.2018 17:01

Другие вопросы по теме