Heim > Backend-Entwicklung > PHP-Tutorial > Wie kann ich mithilfe von cURL effizient das Datum der letzten Änderung einer Remote-Datei in PHP abrufen?

Wie kann ich mithilfe von cURL effizient das Datum der letzten Änderung einer Remote-Datei in PHP abrufen?

Mary-Kate Olsen
Freigeben: 2024-11-13 09:16:02
Original
681 Leute haben es durchsucht

How Can I Efficiently Retrieve the Last Modified Date of a Remote File in PHP using cURL?

Nur ​​Header-Abruf in PHP über cURL

Einführung

In bestimmten Szenarios nur Abruf Die HTTP-Header einer Remote-Ressource können Leistungsvorteile bieten. Dieser Artikel untersucht die Vorteile des Nur-Header-Abrufs und bietet eine PHP-cURL-Lösung zum Abrufen des letzten Änderungsdatums einer Remote-Datei.

Verarbeitungsleistung und Bandbreiteneinsparungen

Wenn nur die Header abgerufen werden, verursacht der Remote-Server weniger Verarbeitungsaufwand als bei der Rückgabe der gesamten Seite. Ebenso wird der Netzwerkbandbreitenverbrauch reduziert, was bei Verbindungen mit geringer Bandbreite oder in Situationen, in denen die Erhaltung der Bandbreite von entscheidender Bedeutung ist, von Vorteil sein kann.

Abrufen des letzten Änderungsdatums

Zu erhalten B. das letzte Änderungsdatum oder den If-Modified-Since-Header, die Optionen CURLOPT_FILETIME und CURLOPT_NOBODY von cURL können verwendet werden. Diese Einstellungen weisen cURL an, nur die Dateizeitinformationen abzurufen und das Herunterladen des Seiteninhalts zu überspringen.

Beispielimplementierung

class LastChange
{
    public $lastChange;

    function setLastChange()
    {
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, "http://url/file.xml");
        curl_setopt($curl, CURLOPT_HEADER, true);
        curl_setopt($curl, CURLOPT_FILETIME, true);
        curl_setopt($curl, CURLOPT_NOBODY, true);

        $header = curl_exec($curl);
        $this->lastChange = curl_getinfo($curl, CURLINFO_FILETIME);
        curl_close($curl);
    }

    function getLastChange()
    {
        return $this->lastChange;
    }
}
Nach dem Login kopieren

Durch Übergabe von CURLINFO_FILETIME als zweiten Parameter an curl_getinfo( ), wird das Datum der letzten Änderung als Unix-Zeitstempel abgerufen.

Zusätzliche Überlegungen

Es ist jedoch wichtig zu beachten, dass Dateizeitinformationen möglicherweise nicht immer verfügbar sind. In solchen Fällen gibt curl_getinfo() -1 zurück, was darauf hinweist, dass die Dateizeit nicht ermittelt werden konnte.

Das obige ist der detaillierte Inhalt vonWie kann ich mithilfe von cURL effizient das Datum der letzten Änderung einer Remote-Datei in PHP abrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage