【问题标题】:PHP SimpleXML - Node as stringPHP SimpleXML - 节点作为字符串
【发布时间】:2013-01-29 18:02:14
【问题描述】:

我试图将 XML 节点(带有子节点)作为字符串但没有成功。

这是我的xml

    <?xml version="1.0" encoding="UTF-8"?>
<params>
  <main_settings>
    <id>23</account_id>
    <test/>
    <logo_url/>
    <app appid="test_12">
      <d:tag xmlns:c="http://mypage.com/test2" id="mypage_id_256" type="mypage_type_test">
        <path-info value="show"/>
      </d:tag>
    </app>
  </main_settings>
</params>

这不起作用。

    $var->params->main_settings->app;

有没有办法使用 simpleXML 将节点(“app”)子节点作为刺痛?

【问题讨论】:

  • 在该示例中,您想获得什么作为文本? test_12?
  • 没有。我需要节点 d:tag 标记作为字符串。

标签: php casting simplexml


【解决方案1】:

您可以在孩子上调用asXml 方法:

$var->params->main_settings->app->asXml();

也可以通过类型转换:

(string)$var->params->main_settings->app

【讨论】:

  • 我试过这个。但是孩子们不在字符串中。只是节点“d:tag”。
  • 你能发布你的输出和代码吗?我不确定我们说的是不是同一个,因为 d:tag 是 app 的子代。
  • 我确定,我们讨论的是同一个问题。我的问题是,我无法在 html 中编写完整的节点。 Firefox 只显示母标签。儿童不包括在内。使用 htmlspecialchars 我可以完整地看到它
  • 在 Firefox 中显示源代码时能看到孩子吗?
  • 我可以通过使用 $xml->asXML(); 看到“d:tag”但我只需要“d:tag”作为字符串。我不是指“d:tag”中的内容。我需要完整的节点作为 String ""
猜你喜欢
  • 1970-01-01
  • 2010-09-19
  • 1970-01-01
  • 1970-01-01
  • 2011-04-13
  • 1970-01-01
  • 1970-01-01
  • 2012-11-19
  • 2015-10-23
相关资源
最近更新 更多