Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Boleh Mengakses Mana-mana Pengepala Permintaan HTTP dalam PHP?

Bagaimanakah Saya Boleh Mengakses Mana-mana Pengepala Permintaan HTTP dalam PHP?

Susan Sarandon
Lepaskan: 2024-12-14 14:43:10
asal
285 orang telah melayarinya

How Can I Access Any HTTP Request Header in PHP?

Cara Membaca Sebarang Pengepala Permintaan dalam PHP

Masalah:

Bagaimana anda boleh mengakses mana-mana pengepala HTTP, termasuk tersuai pengepala, dalam PHP?

Jawapan:

Terdapat beberapa kaedah untuk membaca pengepala permintaan dalam PHP, bergantung pada keperluan khusus anda:

Pengepala Tunggal Retrieval:

Jika anda hanya perlu mendapatkan satu nilai pengepala, gunakan yang berikut sintaks:

<?php
// Replace XXXXXX_XXXX with the name of the header you need in UPPERCASE (and with '-' replaced by '_')
$headerStringValue = $_SERVER['HTTP_XXXXXX_XXXX'];
?>
Salin selepas log masuk

Modul Apache atau FastCGI (PHP 5.4 ):

Jika PHP berjalan sebagai modul Apache atau menggunakan FastCGI dengan PHP 5.4 atau lebih baru, anda boleh menggunakan apache_request_headers() fungsi:

<?php
$headers = apache_request_headers();

foreach ($headers as $header => $value) {
    echo "$header: $value <br />\n";
}
?>
Salin selepas log masuk

Kaedah Fallback:

Dalam semua kes lain, anda boleh menggunakan pelaksanaan userland berikut:

<?php
function getRequestHeaders() {
    $headers = array();
    foreach($_SERVER as $key => $value) {
        if (substr($key, 0, 5) != 'HTTP_') {
            continue;
        }
        $header = str_replace(' ', '-', ucwords(str_replace('_', ' ', strtolower(substr($key, 5)))));
        $headers[$header] = $value;
    }
    return $headers;
}

$headers = getRequestHeaders();

foreach ($headers as $header => $value) {
    echo "$header: $value <br />\n";
}
?>
Salin selepas log masuk

Fungsi Tambahan:

  • getallheaders() (PHP 5.4 ): Alias ​​apache_request_headers().
  • apache_response_headers(): Mengambil semua pengepala respons HTTP.
  • headers_list(): Mengambil senarai pengepala untuk dihantar.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Mengakses Mana-mana Pengepala Permintaan HTTP dalam PHP?. 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
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan