【发布时间】:2016-05-09 18:52:27
【问题描述】:
我想在下载到 csv 后将图像从 url 保存到我的目录及其图像名称。
我编写了以下存储图像的代码。但它没有按我的意愿工作。 在下面的代码中 $img 是从 csv 获取 url 的变量。
假设我在 csv 中有 1000 多种产品,并且每个产品都有图像 url,例如 www.example.com/images/image1.jpg
所以我想将此图像下载到我的本地目录/服务器目录,并在下载后将其图像名称存储到 csv 文件中,这样我就可以只将图像名称添加到数据库表中。
set_time_limit(1000);
while($url = $response->fetch()) {
$my_image = file_get_contents($img);
$my_file = fopen('/csvfiles/','w+');
fwrite($my_file,$my_image);
fclose($my_file);
}
我在其他类似问题上找到的一些解决方案是
$file = file_get_contents($img);
file_put_contents("/csvfiles/Tmpfile.zip", fopen($img, 'r'));
但它不适用于我的情况或不工作。
任何帮助将不胜感激。
编辑新 - 由于标记为重复,我想在此处添加更多信息 -
由于我拥有 csv 格式的所有产品信息,并且在导入产品时,我还想从其 url 下载图像。并且无法手动下载 1000 多个产品图像。我检查了上述解决方案,但不适用于这种情况。与上述解决方案一样,他们仅从特定页面下载图像并直接重命名。所以这里的情况不同。
新代码 - 我也试过这个代码仍然无法正常工作
$content = file_get_contents("http://www.google.co.in/intl/en_com/images/srpr/logo1w.png");
$fp = fopen("/csvfiles/image.jpg", "w");
fwrite($fp, $content);
fclose($fp);
【问题讨论】:
-
csv 文件在这里真的很重要吗?我认为,上面的评论应该会有所帮助。
-
是的 csv 文件很重要 .. 因为我拥有 csv 格式的所有产品信息,并且在导入产品时,我还想从其 url 下载图像。并且无法手动下载 1000 多个产品图像。我检查了上述解决方案,但不适用于这种情况。与上述解决方案一样,他们仅从特定页面下载图像并直接重命名。所以这里的情况不同。