【发布时间】:2016-03-08 02:42:45
【问题描述】:
我正在尝试从我的 XML 文件中检索一些值:
<lx:message xsi:schemaLocation="http://api.latx.corp.netapp.com/ws/schema/1.0/wsmessage.xsd">
<lx:header>
<lx:status>success</lx:status>
</lx:header>
<lx:results>
<lx:perf_data>
<lx:perfid>331070</lx:perfid>
<lx:filepath>/x/eng/cs-data1/latx/prd/20151009_uploads/akshayp/AIo.data</lx:filepath>
<lx:filename>AIo.data</lx:filename>
<lx:datatype>perf8</lx:datatype>
<lx:userid>akshayp</lx:userid>
.
.
.
我想检索<lx:userid>中的值
我的代码是:
<?php
$response = file_get_contents('http://www.myapi.com/myxml.xml');
$response = new SimpleXMLElement($response);
echo $response->{'lx:message'}->{'lx:results'}->{'lx:perf_data'}->{'lx:userid'};
?>
但我收到如下错误:
试图在第 116 行的 C:\wamp\www\1\simple.php 中获取非对象的属性
有人可以帮忙吗,我已经尝试了很多方法来获得解决方案,但仍然失败。
谢谢。
【问题讨论】:
-
因为
lx是一个命名空间,而不是标签名的一部分。 -
但是我仍然没有通过使用 echo $response->{'message'}->{'results'}->{'perf_data'}->{'userid'} 得到想要的输出;