[英]Curl download image only if not older than 2 days
我只想在不超过两天的时间内从远程服务器下载图像。
我正在运行的代码是否正确? 我想在下载之前知道last_modified
数据。
$ch = curl_init($file_source); // the file we are downloading
curl_setopt($ch, CURLOPT_TIMEOUT, 20);
curl_setopt($ch, CURLOPT_FILE, $wh);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_FILETIME, true);
curl_exec($ch);
$headers = curl_getinfo($ch);
$last_modified = $headers['filetime'];
if ($last_modified != -1) { // unknown
echo date("Y-m-d", $last_modified); //etc
}
curl_close($ch);
fclose($wh);
$file_source = 'http://www.google.com/images/nav_logo29.png';
$ch = curl_init($file_source);
curl_setopt($ch, CURLOPT_TIMEOUT, 20);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_FILETIME, true);
curl_setopt($ch, CURLOPT_HEADER, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, false); <-- don't download first
curl_exec($ch);
$headers = curl_getinfo($ch);
$last_modified = $headers['filetime'];
if ($last_modified != -1)
{
if ($last_modified>time()-86400*2) <-- not older than 2 days
{
$ch2 = curl_init($file_source);
$wh = fopen('YOUR_PATH, 'w');
curl_setopt($ch2, CURLOPT_FILE, $wh);
curl_exec($ch2);
curl_close($ch2);
fclose($wh);
}
}
curl_close($ch);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.