<Komple PHP HTTP Referans
Tanımı ve Kullanımı
header() işlevi, bir müşteri için bir ham bir HTTP başlığı gönderir.
Fark etmek önemlidir header() (Eğer bu sorunu çözmek etmek için tampon kullanabilir, PHP 4 ve sonraki) herhangi bir çıktıdan önce çağrılması gerekir:
<html>
<?php
// This results in an error.
// The output above is before the header() call
header('Location: http://www.example.com/');
?>
Sözdizimi
header(string,replace,http_response_code)
Parametre | Açıklama |
---|---|
string | Gereklidir. göndermek için başlık dizesini belirtir |
replace | İsteğe bağlı. başlık önceki değiştirin veya ikinci bir başlık eklemek gerekir olup olmadığını gösterir. Standart DOĞRUDUR (will replace) . YANLIŞ (allows multiple headers of the same type) |
http_response_code | İsteğe bağlı. Belirtilen değere HTTP yanıt kodu zorlar (available in PHP 4.3 and higher) |
İpuçları ve Notlar
Note: Bu fonksiyon bir gönderilir birden fazla başlık önler PHP 4.4 beri. Bu Başlık yerleştirme saldırılarına karşı bir korumadır.
Örnek 1
sayfa önbelleğe alma engelleme:
<?php
// Date in the past
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Cache-Control: no-cache");
header("Pragma: no-cache");
?>
<html>
<body>
...
...
Note: Kullanıcıların tarayıcının varsayılan önbellek ayarlarını değiştirmek için ayarlayabilirsiniz seçenek vardır. Yukarıdaki başlıkları göndererek, bu ayarları geçersiz hale gerektiğini ve önbelleğe tarayıcıyı zorlamak!
Örnek 2
Kullanıcı bir oluşturulan PDF dosyasını kaydetmeniz istenir edelim (Content-Disposition başlık iletişim kutusunu kurtarmak önerilen bir dosya adı tedarik ve görüntülemek için tarayıcı zorlamak için kullanılır):
<?php
header("Content-type:application/pdf");
// It will be called downloaded.pdf
header("Content-Disposition:attachment;filename='downloaded.pdf'");
// The PDF source is in original.pdf
readfile("original.pdf");
?>
<html>
<body>
...
...
Note: bunun çalışmasını engelleyen Microsoft IE 5.5 bir hata var. hata Service Pack 2 veya sonraki yükselterek çözülebilir.
<Komple PHP HTTP Referans