PHP XML:如何使用PHP显示XML

时间:2009-11-02 21:06:10

标签: php xml

如何在php中检索这些XML标记内的内容?

当标签内没有':'时,我可以让它工作。但为此,它似乎不起作用:

$description = $item->getElementsByTagName('desc');
$description = $description->item(0)->firstChild->nodeValue;


<sql:time>21:00</sql:time>
<sql:event> Empty </sql:event>
<sql:desc>This field is empty</sql:desc>

感谢

2 个答案:

答案 0 :(得分:2)

使用您当前使用的功能的namespace equvilant

元素名称中的冒号取消了它所在的命名空间。因此,您将通过调用as:

从sql:time获取信息
$description = $item->getElementsByTagNameNS( 'sql', 'time' );

答案 1 :(得分:2)

或者你可以使用xpath ...

$xp = new DOMXpath($dom);

$xpath->registerNamespace('sql', "http://URI");

$xpath_str = '//sql:desc/text()';

$titles = $xpath->evaluate($xpath_str);

print $titles->item(0)->nodeValue ."\n";

(假设我没有犯任何错误,我可能会......)

http://www.php.net/manual/en/domxpath.registernamespace.php