可能重复:
从SimpleXML访问@attribute
我正在使用一些第三方API,它通过以下形式通过xml返回错误:
<xml>
<status>0</status>
<error code="111">Error message text goes here.</error>
</xml>
Run Code Online (Sandbox Code Playgroud)
simplexml_load_string在PHP中使用我可以轻松获取状态0和错误消息文本,但我找不到code="111"从中检索值的方法<error code="111">.它似乎被SimpleXML放弃了.
<?php
$bytesRead = file_get_contents('http://api.....');
$xml = simplexml_load_string($bytesRead);
echo '<pre>'; print_r($xml); echo '</pre>';
?>
Run Code Online (Sandbox Code Playgroud)
输出
SimpleXMLElement Object
(
[status] => 0
[error] => Error message text goes here.
)
Run Code Online (Sandbox Code Playgroud)
我错过了什么吗?有没有办法获得这个值,或者有人建议另一种方法来获得这个?
Bre*_*mir 11
它就在那里,但只是没有在print_r输出中显示.像示例#5中的基本示例页面硬币一样使用属性:
到目前为止,我们只介绍了阅读元素名称及其值的工作.SimpleXML还可以访问元素属性.像访问数组元素一样访问元素的属性.
例:
$x = '<xml>
<status>0</status>
<error code="111">Error message text goes here.</error>
</xml>';
$attributeObject = simplexml_load_string($x)->error['code'];
print_r($attributeObject);
print_r((string) $attributeObject);
Run Code Online (Sandbox Code Playgroud)
程序输出(演示)
SimpleXMLElement Object
(
[0] => 111
)
111
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18704 次 |
| 最近记录: |