【问题标题】:Retriving content of the elements in a XML string [closed]检索 XML 字符串中元素的内容 [关闭]
【发布时间】:2012-09-30 07:18:07
【问题描述】:

我只是想将一个元素 xml 字符串加载到 DOMDocument 对象,然后检索内容,但我不能......这就是我正在尝试的:

$xml = '<element_1>foobar</element_1>';

$dd = new DOMDocument();
$dd->loadXml($xml);

var_dump($dd->getElementsByTagName('element_1')); //this prints object(DOMNodeList)#2 (0) {
}

有什么帮助吗?

【问题讨论】:

  • 因为它打印了object(DOMNodeList),您是否可以查看DOMNodeList 的文档?请注意,您调用的方法称为 getElement s ByTagName(),因此它返回零个或多个元素的集合。您需要分离出您想要的元素并获取节点的 value (猜猜该属性被称为什么)。
  • "but i can't" 不是错误消息,也不是问题描述。在 400 多个问题之后,您应该知道如何提出问题。

标签: php xml xml-parsing domdocument


【解决方案1】:

您缺少的item(int) 和该项目的nodeValue

$xml = '<element_1>foobar</element_1>';

$dd = new DOMDocument();
$dd->loadXml($xml);

var_dump($dd->getElementsByTagName('element_1')->item(0)->nodeValue);
//string 'foobar' (length=6)

【讨论】:

    【解决方案2】:

    您是否尝试过使用 simplexml_load_string()

    例子:

    <?php
    
    $xml = <<<XML
    <?xml version='1.0'?>
    <element_1>
    foobar
    </element_1>
    XML;
    
    $data = simplexml_load_string($xml);
    
    echo $data;
    

    参考:http://php.net/manual/en/function.simplexml-load-string.php

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2012-07-03
      • 1970-01-01
      • 2023-01-11
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-12-05
      • 2014-05-07
      相关资源
      最近更新 更多