我有从文件夹自动创建图片库的脚本。如果它不存在,它也会生成缩略图。除特殊情况外,一切正常。用户访问页面(Psudo CRON)调用缩略图生成。
我试图使用wget(一个大图像)将图像下载到我的服务器中的画廊文件夹,同时有人访问了网页并且缩略图是从部分下载的图像生成的,它创建了一个如下所示的部分缩略图.
为了在创建缩略图之前解决这个问题,我开始检查文件的最后修改时间和 600 微秒后的修改时间。如果它们不同,我将跳过图像缩略图生成。如果上传没有卡在任何地方并且文件不断更新,这应该可以工作。但另一方面,如果上传没有在指定的时间间隔内更新文件,它将失败
我的代码
//loop
$atime = filemtime($images_dir . $file);
usleep(600);
$btime = filemtime($images_dir . $file);
/* file uploading checking */
if ($atime != $btime) {
continue;
}
// code to generate the thumbnail
有没有其他方法可以解决这个问题?
请注意这里用户可以直接访问文件夹,他可以使用 ftp/另一个脚本等以任何方式填充它,即上传不受脚本控制。