Rumah > Artikel > pembangunan bahagian belakang > Cara menggunakan fungsi maklumat pengepala dalam PHP
PHP ialah bahasa pengaturcaraan popular yang biasa digunakan untuk pembangunan web. Dalam proses ini, fungsi maklumat pengepala ialah alat penting yang boleh membantu kami menetapkan dan mendapatkan maklumat pengepala HTTP. Artikel ini akan memperkenalkan cara menggunakan fungsi maklumat pengepala dalam PHP.
1. Apakah maklumat pengepala HTTP
Dalam permintaan dan respons HTTP, maklumat pengepala digunakan untuk menyampaikan metadata. Maklumat pengepala HTTP terdiri daripada dua bahagian: nama dan nilai. Nama ialah nama pengepala HTTP dan nilai ialah nilai pengepala.
Maklumat pengepala HTTP yang biasa digunakan termasuk:
Dalam PHP, anda boleh menggunakan fungsi pengepala() untuk menetapkan maklumat pengepala HTTP. Fungsi header() menerima parameter rentetan, yang mewakili maklumat pengepala HTTP untuk ditetapkan. Sebagai contoh, kod berikut menetapkan maklumat pengepala Jenis Kandungan kepada teks/html:
header('Content-Type: text/html');
Selain menetapkan maklumat pengepala tunggal, kami juga boleh menggunakan fungsi pengepala() untuk menetapkan berbilang maklumat pengepala. Kod berikut menetapkan maklumat pengepala Jenis Kandungan, Kawalan Cache dan Tamat Tempoh:
header('Content-Type: text/html'); header('Cache-Control: no-cache, no-store, must-revalidate'); header('Expires: 0');
Jika anda perlu menambah maklumat pengepala tersuai, anda boleh menggunakan parameter kedua fungsi pengepala():
header('X-Custom-Header: Hello, world!', false);
Dalam contoh ini, palsu menunjukkan bahawa maklumat pengepala perlu ditambah dan bukannya diganti.
3. Dapatkan maklumat pengepala HTTP
Dalam PHP, anda boleh menggunakan fungsi getallheaders() untuk mendapatkan semua maklumat pengepala HTTP. Fungsi getallheaders() mengembalikan tatasusunan bersekutu, kuncinya ialah nama maklumat pengepala HTTP dan nilainya ialah nilai maklumat pengepala HTTP. Contohnya:
$headers = getallheaders(); echo $headers['Content-Type'];
Dalam contoh ini, kami menggunakan fungsi getallheaders() untuk mendapatkan semua maklumat pengepala HTTP dan mencetak maklumat pengepala Jenis Kandungan.
Jika anda perlu mendapatkan satu maklumat pengepala HTTP, anda boleh menggunakan fungsi apache_request_headers(). Fungsi apache_request_headers() mengembalikan tatasusunan bersekutu, kuncinya ialah nama maklumat pengepala HTTP dan nilainya ialah nilai maklumat pengepala HTTP. Contohnya:
$headers = apache_request_headers(); echo $headers['Content-Type'];
Dalam contoh ini, kami menggunakan fungsi apache_request_headers() untuk mendapatkan semua maklumat pengepala HTTP dan mencetak maklumat pengepala Jenis Kandungan.
Perlu diambil perhatian bahawa fungsi apache_request_headers() hanya tersedia apabila menggunakan pelayan Apache. Jika anda menggunakan pelayan lain, anda boleh melaksanakan sendiri fungsi yang serupa atau gunakan tatasusunan $_SERVER untuk mendapatkan maklumat pengepala HTTP:
echo $_SERVER['HTTP_CONTENT_TYPE'];
Dalam contoh ini, kami menggunakan tatasusunan $_SERVER untuk mendapatkan Jenis Kandungan maklumat pengepala daripada kunci HTTP_CONTENT_TYPE .
4. Masalah dan penyelesaian biasa
Apabila menggunakan fungsi pengepala() untuk menetapkan maklumat pengepala HTTP, anda perlu memberi perhatian kepada isu berikut:
fungsi header() Mesti dipanggil sebelum apa-apa dikeluarkan. Jika tidak, ralat "pengepala sudah dihantar" akan berlaku. Apabila menetapkan berbilang pengepala HTTP, ia mesti ditetapkan dalam susunan yang betul. Sebagai contoh, pengepala Jenis Kandungan mesti ditetapkan sebelum semua pengepala lain, jika tidak, hasil yang tidak dijangka mungkin berlaku.Atas ialah kandungan terperinci Cara menggunakan fungsi maklumat pengepala dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!