【问题标题】:Simple xml returns no values when trying to access nodes尝试访问节点时,简单 xml 不返回任何值
【发布时间】:2014-03-06 15:09:01
【问题描述】:

大家好,对 php 世界很陌生。

我正在侦听包含 xml 的 PHP 帖子,当检索到 xml 时,我需要访问各个节点。我能够回显完整的 xml 文件,但不能回显单个属性。

目前我只是使用 chrome 扩展 Postman 发送数据。没有前端代码。这是我的 XML:

<?xml version="1.0" encoding="UTF-8"?>
<job>
<job_ref>abc123</job_ref>
<job_title>Test Engineer</job_title>
</job>

这是我的 PHP:

if($_SERVER['REQUEST_METHOD'] === 'POST') {
$xml = file_get_contents('php://input');  
echo $xml;
$xml=simplexml_load_file($xml);
echo $xml->job_ref . "<br>";
echo $xml->job_title . "<br>";
}else{
    die();
}

如果我被困住了,任何事情都会很棒。

非常感谢

【问题讨论】:

  • 如果你想输出它的内容,你必须明确地将节点转换为string(string)$xml-&gt;job_ref
  • 你好 -> 你能进一步解释你的答案吗
  • 添加脚本的输出
  • 哪个脚本,我使用邮递员发送数据 -> chrome.google.com/webstore/detail/postman-rest-client/…
  • 在你的问题中添加输出

标签: php xml xml-parsing


【解决方案1】:

simplexml_load_file 期望 XML 文件的路径,而不是其内容。您必须改用simplexml_load_string

$xml = simplexml_load_string($xml);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2019-05-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多