【问题标题】:How to access element like <game:title> with simplexml?如何使用 simplexml 访问像 <game:title> 这样的元素?
【发布时间】:2009-08-20 16:43:26
【问题描述】:

我正在尝试使用 SimpleXML 解析 XML 提要,这是 XML 树的一部分:

<item>
<game:name>Tetris</game:name> 
<game:desc>Way Cool Game</game:desc>
<size>5mb</size> 
</item>

实际上,我可以通过$item-&gt;size 成功访问“大小”,但我如何获得价值?当然我不能这样调用:$item-&gt;game:name,而且我不知道 ':' 之后的内容是如何调用的。是参数、属性还是什么?

感谢您的提前!

【问题讨论】:

    标签: php xml simplexml


    【解决方案1】:

    使用children() 函数获取命名空间的子级。

    $useThis = $xmlDoc-&gt;children("http://game.namespace/");

    假设 http://game.namespace 是根节点中游戏命名空间的 URL。

    这是一个解释/示例:

    【讨论】:

      【解决方案2】:

      您需要为游戏定义命名空间。 XML 要求定义所有名称空间。以前有几个关于使用自定义命名空间的答案: 即

      【讨论】:

        【解决方案3】:

        至于获取 SimpleXMLElement 的值,只需将其转换为字符串即可:

        $size_value = (string)$item->size;
        

        【讨论】:

          猜你喜欢
          • 1970-01-01
          • 2015-02-13
          • 1970-01-01
          • 2011-06-05
          • 2011-01-11
          • 2012-04-13
          • 1970-01-01
          • 1970-01-01
          • 2016-09-08
          相关资源
          最近更新 更多