根据属性值获取XML元素

时间:2011-02-04 04:21:52

标签: php xml image parsing

嘿。  我有一个XML文件,并希望使用PHP仅显示medium大小。 XML的一部分如下所示:

<image size="small">/small23.png</image>
<image size="medium">/medium23.png</image>
<image size="large">/large23.png</image>

我想使用<img src="" />在页面上显示图像,但我不确定如何只放置中等图像。在审查所有其他元素的forloop中,我尝试了这个:

if($file->image->attributes()->size == "medium")
   echo "<img src=$file->image />";

但没有画出来。

感谢

2 个答案:

答案 0 :(得分:5)

根据您的示例,我假设您使用的是SimpleXML,请尝试以下操作:

$mediums = $file->xpath("image[@size='medium']");
if (count($mediums)) {
    echo '<img src="' . (string) $mediums[0] . '" />';
}

答案 1 :(得分:2)


$done = false;
foreach($file->image as $img) {
    foreach($img->attributes() as $key => $value) {
        if($key == "size" && $value == "medium") {
            echo "<img src = {$file->image} />";
            $done = true;
            break;
        }
    }
    if($done) { break; }
}
这可能会有效,请试一试并告诉我。