PHP simplexml获取图像显示


PHP simplexml get image display

我有一个xml,看起来像这样:

<gallery server="5"> 
    <image path="http://i.imgur.com/8n5MB.jpg"/>
    <image path="http://i.imgur.com/TIXL2.jpg"/>
</gallery>

我正在尝试使用PHP将图像显示在一个页面中。这就是我所拥有的:

$xml = simplexml_load_file('./images.xml');
echo $xml->getName() . "<br />";
foreach($xml->children() as $child)
  {
  echo $child->getName() . "<br />";
  }

我的问题是,这只输出以下

gallery
image
image
image

我找不到任何关于如何读取标签本身信息的信息,任何指针?谢谢

您应该这样做:

foreach ($xml->children() as $child)
{
    echo '<img src="' . $child['path'] . '" alt="gallery image" />';
}

您可以使用XPath选择元素,然后从元素的属性列表中获取path属性,如下所示:

foreach( $xml->xpath('//image') as $image)
{
    $attributes = $image->attributes();
    echo $attributes['path'] . "<br />";
}

因此,这个循环将只在<image>标签上循环。对于每个<image>标记,它获取该标记的属性并打印出path属性。