0

问候,

我在理解如何用 PHP 解析 NOAA 的 Weather Alert CAP 时遇到了一些困难。我需要执行以下操作:

  • 在提要中找到正确的县
  • 验证是否存在活动警报
  • 显示警报的描述

我正在使用的提要位于此地址 - http://www.weather.gov/alerts/va.capsimplexml_load_string()过去曾用于此类事情,但它似乎不适用于此提要。

谢谢!

4

2 回答 2

2

在谷歌上呆了一段时间后,我遇到了一个完全符合我想要做的脚本。与其尝试重新发明轮子,我将继续这样做。http://saratoga-weather.org/scripts-atom.php#atomadvisory

于 2011-01-11T18:16:24.857 回答
1

由于命名空间,您可能遇到问题

<cap:alert xmlns:cap='http://www.incident.com/cap/1.0'>

这应该让您了解如何提取信息

$sxe = simplexml_load_file('http://www.weather.gov/alerts/va.cap');
foreach ($sxe->getDocNamespaces() as $ns => $uri) {
    $sxe->registerXPathNamespace($ns, $uri);
}
foreach($sxe->xpath('//cap:areaDesc') as $areaDesc) {
    echo $areaDesc;
}

在旁注中,SimpleXml 仅适用于简单的 XML。考虑改用 DOM。

于 2011-01-11T17:04:37.590 回答