-2

我有一个看起来像这样的 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

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

4

2 回答 2

1

你应该这样做:

foreach ($xml->children() as $child)
{
    echo '<img src="' . $child['path'] . '" alt="gallery image" />';
}
于 2012-07-27T18:03:22.510 回答
0

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

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

所以这个循环只会循环<image>标签。对于每个<image>标签,它都会获取该标签的属性并打印出该path属性。

于 2012-07-27T17:59:48.003 回答