Php 在接受作为上载之前获取远程图像尺寸?getimagesize()太慢

Php 在接受作为上载之前获取远程图像尺寸?getimagesize()太慢,php,Php,我一直在使用getimagesize()获取用户正在上载的图像的尺寸,然后检查是否有足够的内存来处理此图像。问题是getimagesize()在读取维度之前将文件下载到服务器。所以这是第22条。这一定是一个非常普遍的问题,但我还没有找到一个普遍的解决办法。有没有一种可靠的方法可以在不下载的情况下获取远程图像?发送一个HEADHTTP图像请求。这将获得响应头,但不会发送实际的正文(图像) 然后,阅读这些标题并查找内容长度。这是一个以字节为单位显示图像大小的数字。使用它,您可以确定是否有足够的内存来

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

发送一个
HEAD
HTTP图像请求。这将获得响应头,但不会发送实际的正文(图像)


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

为图像发送
HTTP请求。这将获得响应头,但不会发送实际的正文(图像)


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

我也有同样的问题。据我所知,如果您需要维度,
getimagesize()
是itI,我也有同样的问题。据我所知,如果您需要维度,
getimagesize()
这是否也可以获得图像尺寸?@Kolink我也可以从该方法获得图像尺寸吗?与在
.htaccess
文件中设置
上载最大文件大小相比,该方法是否有任何优势?这不会提供以像素为单位的图像尺寸。不过,这是避免将12MB JPEG下载到服务器的良好第一步。一旦服务器上有了(足够小的)文件,其尺寸可能仍然太大而无法处理,但是之前没有办法知道。这也会得到图像尺寸吗?@Kolink我也能从该方法得到图像尺寸吗?这种方法比只在
.htaccess
文件中设置
upload\u max\u filesize
有什么优势吗?这不会给你以像素为单位的图像尺寸。不过,这是避免将12MB JPEG下载到服务器的良好第一步。一旦服务器上有了(足够小的)文件,它的尺寸可能仍然太大而无法处理,但是以前无法知道它。