相关疑难解决方法(0)

使用SimpleXML使用命名空间解析XML

我把它作为xml:

<root xmlns:event="http://www.webex.com/schemas/2002/06/service/event">
    <event:event>
        <event:sessionKey></event:sessionKey>
        <event:sessionName>Learn QB in Minutes</event:sessionName>
        <event:sessionType>9</event:sessionType>
        <event:hostWebExID></event:hostWebExID>
        <event:startDate>02/12/2009</event:startDate>
        <event:endDate>02/12/2009</event:endDate>
        <event:timeZoneID>11</event:timeZoneID>
        <event:duration>30</event:duration>
        <event:description></event:description>
        <event:status>NOT_INPROGRESS</event:status>
        <event:panelists></event:panelists>
        <event:listStatus>PUBLIC</event:listStatus>
    </event:event>
    ...
</root>
Run Code Online (Sandbox Code Playgroud)

我如何遍历所有事件:事件节点和显示,例如,所有事件:SessionKey?

这不起作用:

$xml = new SimpleXMLElement($r);
$xml->registerXPathNamespace('e', 'http://www.webex.com/schemas/2002/06/service/event');

foreach($xml->xpath('//e:event') as $event) {
 var_export($event->xpath('//e:sessionKey'));
}
Run Code Online (Sandbox Code Playgroud)

php xml namespaces simplexml

51
推荐指数
6
解决办法
8万
查看次数

使用php SimpleXML解析XML命名空间

我知道这已被问过很多次,但是我无法得到任何建议来处理我的情况,我已经在网上搜索并尝试了所有内容,但没有任何作用.我只需要使用命名空间限制解析这个XML:只需要四个条目.

<?xml version="1.0" encoding="UTF-8"?>
<entry>
    <id>http://alerts.weather.gov/cap/wwacapget.php?x=TX124EFFB832F0.SpecialWeatherStatement.124EFFB84164TX.LUBSPSLUB.ac20a1425c958f66dc159baea2f9e672</id>
    <updated>2013-05-06T20:08:00-05:00</updated>
    <published>2013-05-06T20:08:00-05:00</published>
    <author>
        <name>w-nws.webmaster@noaa.gov</name>
    </author>
    <title>Special Weather Statement issued May 06 at 8:08PM CDT by NWS</title>
    <link href="http://alerts.weather.gov/cap/wwacapget.php?x=TX124EFFB832F0.SpecialWeatherStatement.124EFFB84164TX.LUBSPSLUB.ac20a1425c958f66dc159baea2f9e672"/>
    <summary>...SIGNIFICANT WEATHER ADVISORY FOR COCHRAN AND BAILEY COUNTIES... AT 808 PM CDT...NATIONAL WEATHER SERVICE DOPPLER RADAR INDICATED A STRONG THUNDERSTORM 30 MILES NORTHWEST OF MORTON...MOVING SOUTHEAST AT 25 MPH. NICKEL SIZE HAIL...WINDS SPEEDS UP TO 40 MPH...CONTINUOUS CLOUD TO GROUND LIGHTNING...AND BRIEF MODERATE DOWNPOURS ARE POSSIBLE WITH</summary>
    <cap:event>Special Weather Statement</cap:event>
    <cap:effective>2013-05-06T20:08:00-05:00</cap:effective>
    <cap:expires>2013-05-06T20:45:00-05:00</cap:expires>
    <cap:status>Actual</cap:status>
    <cap:msgType>Alert</cap:msgType>
    <cap:category>Met</cap:category>

    <cap:urgency>Expected</cap:urgency> …
Run Code Online (Sandbox Code Playgroud)

php xml

10
推荐指数
2
解决办法
2万
查看次数

PHP命名空间simplexml问题

晚上的人.

首先要说的是,我已阅读如何使用SimpleXML解析包含自定义命名空间的XML?.

我正在从一个源代码解析XML文档而不是介意,他们使用自定义命名空间.

<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:moshtix="http://www.moshtix.com.au">
  <channel>
   <item>
    <link>qweqwe</link>
    <moshtix:genre>asdasd</moshtix:genre>
...
Run Code Online (Sandbox Code Playgroud)

例如.当我使用SimpleXML进行解析时,没有一个mostix:namespace元素显示或可访问.可能是一个非常简单的解决方案,但任何想法的家伙?

php xml namespaces simplexml xml-namespaces

6
推荐指数
1
解决办法
3173
查看次数

PHP SimpleXML命名空间问题

我正在尝试获取RSS提要中每个条目的entry-> id和entry-> cap:parameter->值....下面是我正在使用的代码.它正确显示id,但它没有显示值字段....请帮忙.

$url = 'http://alerts.weather.gov/cap/us.php?x=1';
$cap = simplexml_load_file($url);
foreach($cap->entry as $entry){
    echo 'ID: ', $entry->id, "\n";
    echo 'VTEC: ', $entry->children('cap', true)->parameter->value, "\n"; 
echo "<hr>";
}
Run Code Online (Sandbox Code Playgroud)

我在这里先向您的帮助表示感谢.

php xml simplexml

4
推荐指数
1
解决办法
2010
查看次数

标签 统计

php ×4

xml ×4

simplexml ×3

namespaces ×2

xml-namespaces ×1