如何通过PHP获取带连字符的xml节点的值?

时间:2015-06-11 21:22:48

标签: php xml

如何获得带连字符的节点的VALUE?看起来你可以做其他一切,除了这个。

假设你有一些xml

<?xml version="1.0" encoding="UTF-8"?>
<doesntmatter xmlns="http://www.demandware.com/xml/impex/catalog/2006-10-31">
    <list>
        <one>one value</one>
        <two-word>two word value</two-word>
    </list>
</doesntmatter>

首先,加载文件。

$xml = simplexml_load_file('./file.xml');

的非连

抓取非连字节点

$xml->{'list'}->{'one'}[0];   

获取非连字节点的值

$xml->{'list'}->one;   // one value

邹海峰

抓住节点

$xml->{'list'}->{'display-name'}[0];

获取节点的VAUE ???

你不能这样做:

$xml->{'list'}->two-word; // ERRORRRRRRRR
$xml->{'list'}->{'two-word'}; // doesn't output anything.

一旦有了节点,你如何获得THAT节点的值,而不是通过与该子节点对应的魔术方法获取子节点的值?

1 个答案:

答案 0 :(得分:1)

您可以使用以下内容从给定的XML获取<two-word>的节点值:

$twoWordValue = $xml->list->{'two-word'}->__toString();
echo $twoWordValue;