Rumah > pembangunan bahagian belakang > tutorial php > Bolehkah file_get_contents() dalam PHP Menghantar Pengepala HTTP Tersuai?

Bolehkah file_get_contents() dalam PHP Menghantar Pengepala HTTP Tersuai?

Mary-Kate Olsen
Lepaskan: 2024-12-10 05:42:12
asal
613 orang telah melayarinya

Can file_get_contents() in PHP Send Custom HTTP Headers?

Menyesuaikan Pengepala HTTP dengan file_get_contents()

Fungsi file_get_contents() PHP ialah alat serba boleh untuk mendapatkan semula sumber web. Ia sering digunakan dengan pilihan terhad, membuatkan pengguna tertanya-tanya tentang keupayaan penuhnya. Khususnya, menghantar pengepala HTTP tersuai dengan file_get_contents() telah menjadi subjek perdebatan.

Adakah boleh?

Ya, adalah mungkin untuk menghantar pengepala HTTP tersuai menggunakan file_get_contents(). Ini boleh dicapai dengan mencipta konteks strim menggunakan stream_context_create() dan menetapkan pengepala yang dikehendaki dalam pilihan http.

// Create a stream context with custom headers
$opts = [
    "http" => [
        "method" => "GET",
        "header" => "Accept-language: en\r\nCookie: foo=bar\r\n"
    ]
];
$context = stream_context_create($opts);

// Retrieve the web resource using the custom stream context
$file = file_get_contents('http://www.example.com/', false, $context);
Salin selepas log masuk

Dalam contoh ini, kami menetapkan pengepala "Accept-language" dan "Cookie", tetapi anda boleh menambah sebarang pengepala HTTP yang sah mengikut keperluan.

Alternatif Pendekatan

Walaupun file_get_contents() dengan konteks strim tersuai ialah pilihan yang berdaya maju, terdapat fungsi alternatif yang tersedia untuk menghantar pengepala HTTP tersuai.

  • curl_init(): Menyediakan lebih banyak kawalan terperinci ke atas permintaan HTTP, termasuk keupayaan untuk menetapkan pengepala tersuai.
  • fopen() dengan $protocol == 'http:': Mencipta sumber aliran HTTP yang membenarkan manipulasi pengepala.

Pilihan fungsi yang hendak digunakan bergantung pada keperluan dan keutamaan khusus projek anda.

Atas ialah kandungan terperinci Bolehkah file_get_contents() dalam PHP Menghantar Pengepala HTTP Tersuai?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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