我正在使用file_get_contents函数从URL下载图像。但在某些情况下,我得到像这样的错误
“ file_get_contents(http://www.aaaaa.com/multimedia/dynamic/02456/RK_2456652g.jpg):无法打开流:HTTP请求失败!”。 只有部分网址出现此错误,才能使用此代码轻松下载其他图片。
我在 cron 中运行此代码时出现此错误。但是当我从相同的URL手动下载图像时下载。任何人都可以帮我解决这个问题。
我的代码是
$arr="http://www.aaaa.com/multimedia/dynamic/02077/saibaba_jpg_2077721g.jpg";
$file = basename($arr);
$date = date('Ymd');
$id=2225;
if (!file_exists('../media/'.$date)) {
$path=mkdir('../media/'.$date, 0777, true);
}
if (!file_exists('../media/'.$date.'/'.$id)) {
$path=mkdir('../media/'.$date.'/'.$id, 0777, true);
}
//Get the file
$content= file_get_contents($arr);
//Store in the filesystem.
$fp = fopen('../media/'.$date.'/'.$id.'/'.$file, "w");
fwrite($fp, $content);
fclose($fp);
答案 0 :(得分:0)
如果您执行了自己的功能,则必须提供文件的完整路径。 LIKE
$arr="http://www.aaaa.com/multimedia/dynamic/02077/saibaba_jpg_2077721g.jpg";
$file = basename($arr);
$date = date('Ymd');
$id=2225;
if (!file_exists('/var/www/path_to_Your_folder/media/'.$date)) {
$path=mkdir('/var/www/path_to_Your_folder/media/'.$date, 0777, true);
}
if (!file_exists('/var/www/path_to_Your_folder/media/'.$date.'/'.$id)) {
$path=mkdir('/var/www/path_to_Your_folder/media/'.$date.'/'.$id, 0777, true);
}
//Get the file
$content= file_get_contents($arr);
//Store in the filesystem.
$fp = fopen('/var/www/path_to_Your_folder/media/'.$date.'/'.$id.'/'.$file, "w");
fwrite($fp, $content);
fclose($fp)