我正在使用PHP的SimpleXML从以下XML中获取一些值;
- <entry>
<id>http://www.google.com/m8/feeds/contacts/email_address%40gmail.com/base/0</id>
<updated>2010-01-14T22:06:26.565Z</updated>
<category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/contact/2008#contact" />
<title type="text">Customer Name</title>
<link rel="http://schemas.google.com/contacts/2008/rel#edit-photo" type="image/*" href="http://www.google.com/m8/feeds/photos/media/email_address%40gmail.com/0/34h5jh34j5kj3444" />
<link rel="self" type="application/atom+xml" href="http://www.google.com/m8/feeds/contacts/email_address%40gmail.com/full/0" />
<link rel="edit" type="application/atom+xml" href="http://www.google.com/m8/feeds/contacts/email_address%40gmail.com/full/0/5555" />
<gd:email rel="http://schemas.google.com/g/2005#other" address="customer@gmail.com" primary="true" />
</entry>
我可以获得标题:
$xml = new SimpleXMLElement($response_h1);
foreach ($xml->entry as $entry) {
echo $entry->title, '<br />';
}
但是如何获得address =“customer@gmail.com”属性?
答案 0 :(得分:1)
您的命名空间无效。如果没有命名空间,您应该能够获取这样的地址,
$email = (string)$xml->email['address'];
SimpleXML中存在一些错误。元素使用成员语法“ - &gt;”但只能使用数组语法“[]”访问属性。