繁体   English   中英

从PHP中的XML提取

[英]Extract from XML in PHP

<toplevel>
 <CompleteSuggestion>
  <suggestion data="shook ones part 2"/>
 </CompleteSuggestion>
 <CompleteSuggestion>
  <suggestion data="shook me all night long"/>
 </CompleteSuggestion>
 <CompleteSuggestion>
  <suggestion data="shook ones instrumental"/>
 </CompleteSuggestion>
 <CompleteSuggestion>
  <suggestion data="shook me all night long lyrics"/>
 </CompleteSuggestion>
</toplevel>

我想从此XML输出中提取“第2部分”。 我已经解决了所有解决方案,但无法做到这一点。 我尝试了这个:

<?php
$url = 'http://suggestqueries.google.com/complete/search?output=toolbar&hl=en&q=shook&ds=yt';
$exact = simplexml_load_file($url);
echo $exact->CompleteSuggestion[0]->suggestion;
?>

shook ones part 2是一个属性的值datasuggestion 因此,您应该使用功能attributes()获得suggestion所有属性,然后选择data

$exact = simplexml_load_file('$url');
echo $exact->CompleteSuggestion[0]->suggestion->attributes()->data;

省略单引号

simplexml_load_file('$url');
                    ^    ^

您可以为此使用DOMDocumen t。 以下示例将搜索标签建议并回显data属性:

$domDocument = new DOMDocument();
$domDocument->loadXML( $xml );

$value = $domDocument->getElementsByTagName( "suggestion" );
foreach ( $value as $e ) {
    echo $e->getAttribute( "data" )."<br>";
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM