Bagaimanakah Saya Boleh Dapatkan Tarikh Terakhir Diubah Suai Fail Jauh Menggunakan curl dalam PHP?

Mary-Kate Olsen
Lepaskan: 2024-11-13 01:48:02
asal
214 orang telah melayarinya

How Can I Retrieve the Last Modified Date of a Remote File Using curl in PHP?

Pendapatan Pengepala Sahaja dalam PHP melalui Curl

Mengurangkan Muatan Pelayan dengan Pencapaian Pengepala Sahaja

Apabila mendapatkan semula kandungan web menggunakan PHP dan curl, adalah mungkin untuk menentukan sama ada untuk mengambil hanya pengepala atau keseluruhan halaman. Memilih pilihan pengepala sahaja mengurangkan kuasa pemprosesan dan lebar jalur yang diperlukan pada pelayan jauh, kerana ia tidak termasuk keperluan untuk menjana dan menghantar badan halaman.

Mengambil Tarikh Terakhir Diubah Suai melalui curl_getinfo

Untuk mendapatkan semula tarikh terakhir diubah suai atau pengepala If-Modified-Since bagi fail jauh, anda boleh menggunakan curl_getinfo(). Lulus pemegang curl (bukan data pengepala) sebagai argumen pertama dan tentukan CURLINFO_FILETIME sebagai argumen kedua. Walau bagaimanapun, adalah penting untuk ambil perhatian bahawa masa fail mungkin tidak selalu tersedia, dalam hal ini ia akan dilaporkan sebagai -1.

Contoh: Mendapatkan Tarikh Terakhir Diubah Suai

<?php

class URIInfo
{
    public $info;
    public $header;
    private $url;

    public function __construct($url)
    {
        $this->url = $url;
        $this->setData();
    }

    public function setData()
    {
        $curl = curl_init();
        curl_setopt($curl, CURLOPT_URL, $this->url);
        curl_setopt($curl, CURLOPT_FILETIME, true);
        curl_setopt($curl, CURLOPT_NOBODY, true);
        curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($curl, CURLOPT_HEADER, true);
        $this->header = curl_exec($curl);
        $this->info = curl_getinfo($curl);
        curl_close($curl);
    }

    public function getFiletime()
    {
        return $this->info['filetime'];
    }
}

$uri_info = new URIInfo('http://www.codinghorror.com/blog/');
$filetime = $uri_info->getFiletime();
if ($filetime != -1) {
    echo date('Y-m-d H:i:s', $filetime);
} else {
    echo 'filetime not available';
}
Salin selepas log masuk

?>

Pertimbangan Tambahan

Kelas URIInfo boleh dilanjutkan dengan kaedah untuk mendapatkan semula maklumat pengepala lain, seperti jenis kandungan atau ETag.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Dapatkan Tarikh Terakhir Diubah Suai Fail Jauh Menggunakan curl dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan