如何提取 的内容在 XML 文档中?
我有一个文档,其结构如下所示。
有很多
。我的问题是如何输出每个条目的
?还有一个问题,如何只输出USERNAME
?
这是我想要获取用户名的文件 http://search.twitter.com/search .atom?q=洋基队
<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns:google="http://base.google.com/ns/1.0" xml:lang="en-US" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns="http://www.w3.org/2005/Atom" xmlns:twitter="http://api.twitter.com/" xmlns:georss="http://www.georss.org/georss">
<entry>
<author>
<name></name>
<uri>http://twitter.com/USERNAME</uri>
</author>
</entry>
I have a document that it's structure is like below.
There are a lot of <entry>
. My question is how can I output the <uri>
of each entry? And another question, how can I output only the USERNAME
?
This is the file I want to get the usernames http://search.twitter.com/search.atom?q=yankees
<?xml version="1.0" encoding="UTF-8"?>
<feed xmlns:google="http://base.google.com/ns/1.0" xml:lang="en-US" xmlns:openSearch="http://a9.com/-/spec/opensearch/1.1/" xmlns="http://www.w3.org/2005/Atom" xmlns:twitter="http://api.twitter.com/" xmlns:georss="http://www.georss.org/georss">
<entry>
<author>
<name></name>
<uri>http://twitter.com/USERNAME</uri>
</author>
</entry>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您可以使用 Xpath 查询
http://www.php.net/manual/en/simplexmlelement.xpath.php
或者
http://php.net/manual/en/domxpath.query.php
You can use Xpath queries
http://www.php.net/manual/en/simplexmlelement.xpath.php
or
http://php.net/manual/en/domxpath.query.php
您应该使用 SimpleXML 某种遍历所有 s 的循环。
(我认为 foreach($xml->entry as $entry) 循环应该可以正常工作。)
对于第二个:如果它始终是 http://twitter.com/USERNAME ,只需计算前缀的长度而不是使用子字符串。
使用的资源:substr、SimpleXML, SimpleXML
You should use SimpleXML some kind of a loop which goes trough all the s.
(
foreach($xml->entry as $entry)
loop should work fine, I think.)And for the second: if it is always
http://twitter.com/USERNAME
, simply count the prefix's length than use a substr.Resources to use: substr, SimpleXML, SimpleXML