您好,我有以下 XML 片段:
......
<Result number="4" position="1" points="25">
<Driver driverId="button" url="http://en.wikipedia.org/wiki/Jenson_Button">
<GivenName>Jenson</GivenName>
<FamilyName>Button</FamilyName>
<DateOfBirth>1980-01-19</DateOfBirth>
<Nationality>British</Nationality>
</Driver>
......
我可以使用以下内容轻松获取 GivenName:
$item->Driver->GivenName;
但是当我使用时:
$item->Driver->FamilyName;
我得到 SimpleXMLElement 对象 ()
我环顾四周,发现这可能与将它传递给字符串有关,但随后我在屏幕上什么也看不到。甚至不是 SimpleXMLElement 对象。
我不明白,因为它是 GivenName 的 sibling ,而且有效。
最佳答案
在这两种情况下您都会得到一个 SimpleXMLElement 对象,如果您使用 print_r() 就会看到它:
print_r ($item->Driver->GivenName);
print_r ($item->Driver->FamilyName);
输出:
SimpleXMLElement Object
(
[0] => Jenson
)
SimpleXMLElement Object
(
[0] => Button
)
您可以使用显式转换将值作为字符串获取:
$givenNameString = (string) $item->Driver->GivenName;
$familyNameString = (string) $item->Driver->FamilyName;
关于php - 从 SimpleXMLElement 对象获取值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7070083/