动态下载图像

时间:2013-03-08 12:24:21

标签: image xml-parsing opencart

我的供应商给我一个包含所有产品及其图片的xml文件。

图像托管在suplyer的数据库中,因此在xml文件夹中显示为www.webservice.supplier.com/index.php?action=getimage&id=10

如何下​​载此图像或在我的opencart系统中使用?

1 个答案:

答案 0 :(得分:0)

您可以尝试使用file_get_contents,fopen或任何其他相关的php函数打开该文件。一旦打开到流中,您可以使用一组相关的函数(fwrite等)保存它。

关于细节,这是一些快速而又脏的PHP代码。

//This is the source image...
$url='http://www.google.es/logos/2013/womens_day_2013-1055007-hp.jpg';

$file=fopen($url, 'r'); //Check with your server's provider, just in case they won't allow you to do this.

if(!$file)
{
    die('ERROR: Could not read file');
}
else
{
    //This is where you'll store the file. Check the directory permissions.
    $destination=fopen('results/file_in_disk_.jpg', 'w');

    if(!$destination) die('ERROR: Could not create or open destination file');
    else
    {
        while($data=fread($file, 1024))
        {
            fwrite($destination, $data);
        }

        fclose($destination);
        fclose($file);
    }
}

图片提供者可能正在输出与该网址相关联的图片标头,因此如果源网址看起来不像图片,请不要担心。

请记住,您应该获得供应商的许可才能下载和使用图像。

希望有所帮助。

编辑:我忘记了,你应该将该代码包装在从XML文件中读取的其他部分中并执行其操作。不要忘记检查已有的图像!。