Php 我需要提取http查询生成的xml结果的值
我真的需要一些人帮我做这件事,它快把我逼疯了 我需要从http查询生成的xml文件中提取值 我会解释 我需要向此行添加一个变量: 我可以用php进行一些变量编辑 这将生成如下所示的xml文件:Php 我需要提取http查询生成的xml结果的值,php,xml,variables,extract,Php,Xml,Variables,Extract,我真的需要一些人帮我做这件事,它快把我逼疯了 我需要从http查询生成的xml文件中提取值 我会解释 我需要向此行添加一个变量: 我可以用php进行一些变量编辑 这将生成如下所示的xml文件: <lfm status="ok"> <results for="rihanna"> <opensearch:Query role="request" searchTerms="rihanna" startPage="1"/>
<lfm status="ok">
<results for="rihanna">
<opensearch:Query role="request" searchTerms="rihanna" startPage="1"/>
<opensearch:totalResults>3821</opensearch:totalResults>
<opensearch:startIndex>0</opensearch:startIndex>
<opensearch:itemsPerPage>30</opensearch:itemsPerPage>
<artistmatches><artist><name>Rihanna</name>
<listeners>3236233</listeners>
<mbid>73e5e69d-3554-40d8-8516-00cb38737a1c</mbid>
<url>http://www.last.fm/music/Rihanna</url>
<streamable>1</streamable>
<image size="small">http://userserve-ak.last.fm/serve/34/71057304.png</image>
<image size="medium">http://userserve-ak.last.fm/serve/64/71057304.png</image>
<image size="large">http://userserve-ak.last.fm/serve/126/71057304.png</image>
<image size="extralarge">http://userserve-ak.last.fm/serve/252/71057304.png</image>
3821
0
30
蕾哈娜
3236233
73e5e69d-3554-40d8-8516-00cb38737a1c
http://www.last.fm/music/Rihanna
1.
http://userserve-ak.last.fm/serve/34/71057304.png
http://userserve-ak.last.fm/serve/64/71057304.png
http://userserve-ak.last.fm/serve/126/71057304.png
http://userserve-ak.last.fm/serve/252/71057304.png
所以文件还在继续
从原始查询生成的xml输出中,我需要提取
中的URL。您可以查看php中的URL以获得特定的图像链接。。。假设您在$str
中有XML字符串,则这些字符串足以帮助您解决此问题:
$xmlObj = simplexml_load_string($str);
foreach($xmlObj->results as $result)
{
foreach($result->artistmatches->artist as $artist)
{
foreach($artist->image as $image)
{
if($image->attributes()->size == 'medium')
{
echo 'size medium: ' . (string)$image;
}
}
}
}
您可以直接从URL获取XML,而不用加载字符串。我使用Last.fm提要制作应用程序,并获取我使用的图像:
$imagexml = simplexml_load_file($imageurl) or $error = "Feed Not Loading";
$album = $imagexml->album;
$image = (string) $album->image[2];
$imageurl是Last.FM的url,$image将为您提供该图像的url您需要将结果字符串放入SimpleXML
中,以使您的生活更轻松。@peter谢谢,我尝试了以下内容,但没有返回任何内容,请原谅我缺乏知识…'编码“var\u dump()
变量以查看是否返回任何内容。同时,回显$album
和$imagexml
不会显示任何内容,因为它们是对象