一旦用户将他们的图像上传到非公共(即外部htdocs或public_html文件夹)文件夹,我就会使用GD从该文件夹中获取图像。这一切都是以安全性为名,因为图像本身永远不会被处理。
问题在于动画GIF,GD只能通过显示它的第一帧来显示。
我知道有些课程可以将GIF切割成各自的框架并将它们“粘合”在一起,但我希望能够即时显示这些......
我不想创建一个新的动画gif并显示它,而是有一个GD脚本,它从图片目录中获取的信息呈现图像,位于公共文件夹之外。
非常感谢!
答案 0 :(得分:3)
如果您根本不操作图像,我只会使用正确的标题返回文件内容。
例如:
<?php
$file = 'whatever.gif';
// Do whatever checks you want on permissions etc
header('Content-type: image/gif');
readfile($file);
?>
Readfile输出文件的内容,标题确保浏览器将其视为gif并显示它。因为你不使用GD,它仍然会被动画化。
使用此方法的问题是,您需要知道每个文件的内容类型才能正确地为其提供服务。