我正在处理一个上传脚本,该脚本也会调整图像大小/重新缩放。
目前正在上传图片,转移到上传目录(site.com/upload),然后调整大小,然后再次删除原件......
现在我的问题是: 我是否可以在不将原件移动到上传目录的情况下执行此操作,甚至更好,同时将新文件保留在tmp中,以便用户可以事后确认图像(所以如果他们不想要它并且只需点击“后退”按钮就可以了不会留在上传目录。)
当前代码:
move_uploaded_file($_FILES['file']['tmp_name'], 'resize-upload/'.$_FILES['file']['name']);
$filename=$_FILES['file']['name'];
$Imagick=new Imagick();
$Imagick-> readImage('resize-upload/'.$filename);
$Imagick-> scaleImage(200,200,auto);
$Imagick-> writeImage('resize-upload/resized-'.$filename);
unlink('resize-upload/'.$filename);
答案 0 :(得分:4)
你做不到。如果尚未移动图像,则无法访问该图像。但是,您可以从同一图像/对象一次生成多个缩略图,如果您正在存储/保留原始缩略图,则您也不需要取消链接。
另一种方法是使用flash并在客户端调整图像大小,然后只保存调整大小的图像。