xml到php未正确解析信息

xml到php未正确解析信息,php,xml,Php,Xml,我正在使用iTunesAPI 我需要抓取图像解析到我们的php中 嗯 这是来自iTunesXML <image height="55">http://a5.mzstatic.com/us/r1000/078/Music/3c/40/58/mzi.ryeiepvk.55x55-70.jpg</image> <image height="60">http://a4.mzstatic.com/us/r1000/078

我正在使用iTunesAPI

我需要抓取图像解析到我们的php中

  • 这是来自iTunesXML

                <image height="55">http://a5.mzstatic.com/us/r1000/078/Music/3c/40/58/mzi.ryeiepvk.55x55-70.jpg</image>
    
                <image height="60">http://a4.mzstatic.com/us/r1000/078/Music/3c/40/58/mzi.ryeiepvk.60x60-50.jpg</image>
    
                <image height="170">http://a3.mzstatic.com/us/r1000/078/Music/3c/40/58/mzi.ryeiepvk.170x170-75.jpg</image>
    
    http://a5.mzstatic.com/us/r1000/078/Music/3c/40/58/mzi.ryeiepvk.55x55-70.jpg
    http://a4.mzstatic.com/us/r1000/078/Music/3c/40/58/mzi.ryeiepvk.60x60-50.jpg
    http://a3.mzstatic.com/us/r1000/078/Music/3c/40/58/mzi.ryeiepvk.170x170-75.jpg
    
  • 现在我的PHP中有了这个

    $image=$songinfo->image;
                            echo "<li>
                                    <img class='minivideo-img' src=",$image,">
    
    $image=$songinfo->image;
    回声“
  • 这很好,但它没有拉在图像我希望它的默认值最小

    我需要抓取xml中的图像,如:

    <image height="170">
    
    
    
    当我检查我的html时,我看到:

    <img class="minivideo-img" src="http://a5.mzstatic.com/us/r1000/078/Music/3c/40/58/mzi.ryeiepvk.55x55-70.jpg">
    
    
    
    我需要得到这个:

    <img class="minivideo-img" src="http://a3.mzstatic.com/us/r1000/078/Music/3c/40/58/mzi.ryeiepvk.170x170-75.jpg">
    

    您的示例代码需要从XML中从图像节点检索属性(在本例中为
    $mysongs
    )。由于
    $songinfo->image
    似乎是图像URL,因此
    height
    属性应该是
    $songinfo->image['height']

    更新:现在您已经更新了您的问题,您似乎有多个
    图像
    节点。您需要像这样循环它们:

    for( $i = 0; $i < count($songinfo->image); $i ) {
        if( $songinfo->image[$i]['height'] >= 170 ) {
             $image = $songinfo->image[$i];
             break;
        }
    }
    echo '<img src=\''.$image.'\' />';
    
    for($i=0;$iimage);$i){
    如果($songinfo->image[$i]['height']>=170){
    $image=$songinfo->image[$i];
    打破
    }
    }
    回声';
    
    (也更新为使用更简单的属性表示法。)


    你知道,thinkvitamin.com的链接已经有了你所需要知道的一切。

    你在使用什么XML解析器?Simplexml因为它看起来使用起来最简单,而且内置在苹果的PHP5中,你可能需要使用专有的iXML解析器,因为他们毫无理由地将尖括号旋转了90度。嗯,我不明白,这很令人沮丧ng.也许我应该删除这个问题,然后重新开始,我本来打算推出一个在线演示。但是人们喜欢这里的所有内容。嗯,我不明白。xml中的数据是:anyurl.jpg那么我该如何做php?这是答案,只是不懂如何构建php字符串啊……所以有多个
    图像
    节点?这是一个cr非常重要的一条信息!在这种情况下,
    $songinfo->image
    将看起来像一个数组。你需要在其中循环,直到找到你想要的
    高度属性。干杯,伙计,我不知道我是否可以使用child。我会继续努力。我想我不知怎么搞砸了我的循环。我已经选择了你的答案,我会的请我的一个php同事看一下我的代码。非常感谢:)