获取远程图像尺寸,然后将其作为上传接受? getimagesize()太慢了

时间:2012-05-23 22:26:31

标签: php

我一直在使用getimagesize()来获取用户正在上传的图像的尺寸,然后检查是否有足够的内存来处理此图像。问题是getimagesize()在读取维度之前将文件下载到服务器。所以它的问题22.这一定是一个非常普遍的问题,但我没有遇到通用的解决方案。有没有一种可靠的方法来获取远程图像尺寸而无需下载?

1 个答案:

答案 0 :(得分:3)

发送图像的HEAD HTTP请求。这将为您提供响应标题,但不会发送实际正文(图像)。

然后,阅读这些标题并查找Content-Length。这是一个以字节为单位显示图像大小的数字。使用它可以确定是否有足够的内存来处理图像,在这种情况下,您可以将请求重复为GET(这是getimagesize()基本上做的事情)