【问题标题】:XML : PHP echo is empty [duplicate]XML:PHP 回显为空 [重复]
【发布时间】:2014-05-25 13:21:05
【问题描述】:

在回显 xml 标记时遇到问题。

PHP:

$xml = $insureFormResult->returned;
$xml1 = new SimpleXMLElement($xml);
$result = $xml1->xpath("response")[0];
echo $result;

如果我回显 $xml,它会给我:

<?xml version="1.0" encoding="utf-8"?>
<response>
  <errors>
    <error code="7">Your details are already in our system and have been forwarded to our insurance partners who will contact you shortly</error>
  </errors>
</response> 

xml 将始终有一个响应标签。我也想知道如何用 id 'code' 回显标签。我尝试了上面的php,但没有结果。

任何形式的帮助将不胜感激!

编辑

由于我服务器上的 PHP 版本,它无法正常工作。

【问题讨论】:

  • stackoverflow.com/questions/2811797/… &lt;response&gt; 是您示例的根节点,SimpleXML 不会遍历它。 xpath("/response") 会起作用。
  • @MichaelBerkowski:谢谢你的链接,只是在寻找骗子。
  • @msbodetti 您可以在此处找到有关 SimpleXML 的更多文档和帮助:Basic SimpleXML usage
  • @hakre 我正在寻找在我投简历之前解释这一点的文档
  • 1) 您是否启用了 display_errors? 2) 您使用的是 PHP 5.4 或更高版本吗?您需要 5.4 来解除对函数调用 ()[] 的数组引用。如果你没有得到输出,你实际上可能有一个致命错误。 echo $response[0]-&gt;errors-&gt;error; 返回您的字符串。 codepad.viper-7.com/62FVWb

标签: php xml tags


【解决方案1】:

我对 PHP 不是很熟悉,但是使用属性 code 和值 7 访问错误的 xpath 是:

/response/errors/error[@code='7']

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-02-25
    • 2017-07-13
    • 2017-11-22
    • 2019-01-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多