将图像从xml文件显示到php

时间:2015-01-29 09:02:02

标签: php xml

我是PHP和XML的新手。

我试图建立一个电子商店,我将XML文件作为"数据库"。实际上每个产品都有一个XML。

我用PHP显示数据,除了图像外,一切似乎都很顺利。当我试图在image td中显示图像时,它会显示图像的路径,而不是图像。

PHP代码

<?php
    $files =glob('*.xml');
    foreach($files as $file){
        $xml=new SimpleXMLElement($file, 0, true);
        $xpath = $xml->xpath("/wine/image");
?>                              
<tr>
    <td><?php echo $xml->id ?></td>
    <td><?php echo $xml->category ?></td>
    <td><?php echo $xml->name ?></td>
    <td><?php echo $xml->producer ?></td>
    <td><?php echo $xml->price ?></td>
    <td><?php echo $xpath[0]['src']; ?></td>                            
</tr>  
<?php
    }
?>

data.xml中

<wine>
    <category>red</category>
    <id>1</id>
    <name>krasaki</name>
    <producer>alkoolikos</producer>
    <price>12.50</price>
    <addcart>patato</addcart>
    <image   src="images/white_wine.jpg" width="50" height="50"  /> 
</wine>

wine是XML

的根标记

2 个答案:

答案 0 :(得分:0)

如果您将xml中的图片标记更改为img,则可以使用

$xml->img->asXML();

显示图像。

您还可以执行str_replace来替换标记:

str_replace('image','img',$xml->image->asXML());

答案 1 :(得分:0)

在这个帖子中解决了类似的问题。看看这个,

How to display image in PHP with XML?