Frage

Enthält native PHP Funktion get_headers () Downloads alle Inhalte, oder stoppt das Herunterladen nach Header bekommen?

War es hilfreich?

Lösung 2

get_headers nur Graps Header-Teil der Antwort, und löscht die Verbindung.

Ich trete interaktiven Modus mit PHP -a ausgegeben, um den Befehl:

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
)

Dies dauerte weniger als 1 Sekunde. Da Chrom sagt 1 Tag Es dauerte ubuntu im Vergleich zum Download, zu 1sec Antwort von get_headers, sollte es nur Header sammeln werden.

Andere Tipps

Ich kann es nicht testen, mich gerade jetzt, aber nach dieser Kommentar im Handbuch :

  

Wenn jemand neugierig ist, wie ich war, ist diese Funktion nicht HEAD Verb senden. Stattdessen sendet er eine GET. Was in meinem Fall ist nicht ideal, weil ich eine schnelle Art und Weise brauche einen HTTP-Status zu erhalten (200, 404, etc.) Das Problem mit GET ist, dass für Fälle wie ich, ich will nicht die ganzen Aufwand mit den Daten, die kommt zurück.

in der Tat die vollständige Antwort Körper jedes Mal gesendet wird.

Nehmen Sie es mit einem Körnchen Salz, aber wie die manuellen sah die HEAD Methode nicht erwähnt, ich denke, das ist richtig.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top