php有原生功能吗 获取标题() 下载所有内容,还是在获取标题后停止下载?

有帮助吗?

解决方案 2

get_headers仅graps响应的报头部分,并丢弃连接。

我进入使用PHP -a发出的命令交互模式:

php > print_r( get_headers('http://ftp.linux.org.tr/ubuntu-releases//maverick/ubuntu-10.10-desktop-i386.iso'));
Array
(
[0] => HTTP/1.1 200 OK
[1] => Date: Sat, 30 Oct 2010 23:33:12 GMT
[2] => Server: Apache/2.2.13 (FreeBSD)
[3] => Last-Modified: Thu, 07 Oct 2010 16:25:11 GMT
[4] => ETag: "c7e78fe-2b528000-492095688a7c0"
[5] => Accept-Ranges: bytes
[6] => Content-Length: 726827008
[7] => Connection: close
[8] => Content-Type: application/octet-stream
)

此用了不到1秒。由于铬说,花了1天到下载Ubuntu的,相比get_headers的1秒的反应,应该仅收集头。

其他提示

我现在无法亲自测试,但根据 手册中的这个注释:

如果有人像我一样好奇,这个函数不会发送 HEAD 动词。相反,它发送一个 GET。在我的情况下,这并不理想,因为我需要一种快速的方法来获取 HTTP 状态(200、404 等)。 GET 的问题是,对于像我这样的情况,我不希望所有的开销都来自于以下数据:回来。

事实上,每次都会传输完整的响应主体。

对此持保留态度,但由于手册中没有提及 HEAD 方法,我认为这是正确的。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top