PHP图像优化器
我们正在建立一个网络应用程序,将有很多图片上传。优化这些图像并将其存储在网站上的最佳解决方案是什么 还有一种方法我可以自动增强上传的图像吗PHP图像优化器,php,image,api,optimization,Php,Image,Api,Optimization,我们正在建立一个网络应用程序,将有很多图片上传。优化这些图像并将其存储在网站上的最佳解决方案是什么 还有一种方法我可以自动增强上传的图像吗 不要将图像存储在数据库中,将它们存储在文件系统中(作为真实文件)。不过,您可能需要在DB中存储有关它们的信息,例如文件名、上载时间、大小、所有者等 文件名必须是唯一的。您可以使用yyyyymmddhhiissnnn,其中yyyymmdd是年、月和日期,hhiiss-小时、分钟和秒,nnnnn-第二个图像中的图像数,即第一个图像为0001,第二个图像为0002
yyyyymmddhhiissnnn
,其中yyyymmdd
是年、月和日期,hhiiss
-小时、分钟和秒,nnnnn
-第二个图像中的图像数,即第一个图像为0001
,第二个图像为0002
等。这将为您提供具有良好顺序的唯一文件名images///
这样的东西。这也可以跨越多个服务器\u icon
,\u profile
和\u full
添加到原始图像的文件名中。根据您的资源和同时上载的图像数量,您可以实时(在同一HTTP请求中)或使用一些后台处理(cron作业,该作业持续检查是否有新图像要转换)至于自动增强图像-这是可能的,但前提是你确切地知道如何处理图像。我认为分析每一张图片并决定应该用它做什么可能太复杂,需要太多的资源。上面binaryLV的所有好建议。除了他的建议#5之外,你可能还想优化你创建的缩略图。上载图像时,它们可能包含缩略图不需要的元数据。您可以无损地删除元数据,以减小缩略图大小,如下所示:。我个人在我的网站的图片上使用jpegtran来自动优化我的缩略图。如果需要元数据,可以从原始图像中获取
如果您打算为用户显示这些图像,则需要考虑的是,在这里没有提到的cookie免费域或子域名上托管您的图像:如果图像托管在具有cookie的域或子域上,则每个图像都将发送一个不必要的cookie。它可以为每个请求的图像节省几KB的空间,加起来相当可观,特别是在带宽受限的连接上,例如在移动设备上