首頁 >後端開發 >PHP問題 >php函數header的作用

php函數header的作用

藏色散人
藏色散人原創
2019-08-27 13:48:5887587瀏覽

php函數header的作用

php函數header的作用

#PHP 中header()函數的作用是傳送頭訊息給客戶端訊息。

推薦:【PHP教學

什麼是頭資訊?

這裡只作簡單解釋,詳細的自己看http協定。

在HTTP協定中,伺服器端的答案(response)內容包含兩個部分:頭資訊(header) 和體內容,這裡的頭資訊不是HTML中的93f0f5c25f18dab9d176bd4f6de5d30e9c3bca370b5104690d9ef395f2c5f8d1部分,同樣,體內容也不是a64997a0904a094b4570728d7f327acda0b5ad22ce41154d0eeb328c7ad40487。頭資訊是使用者看不見的,裡麵包含了很多項,包括:伺服器資訊、日期、內容的長度等。而體內容就是整個HTML,也就是你所能看見的全 部東西。

頭資訊有什麼用呢?

頭訊息的作用很多,最主要的有下面幾個:

1、跳轉:當瀏覽器接受到頭訊息中的Location: xxxx 後,就會自動跳到xxxx 指向的URL位址,這點有點類似用js 寫跳轉。但是這個跳轉只有瀏覽器知道,不管體內容裡有沒有東西,使用者都看不到。

2、指定網頁的內容:同樣一個XML文件,如果頭資訊中指定:Content-type: application/xml 的話,瀏覽器會將其依照XML文件格式解析。但是,如果在頭資訊中是:Content-type: text/xml 的話,瀏覽器就會將其視為存文本解析。 (瀏覽器不是按照擴展名解析文件的)

3、附件:不知道大家有沒有註意,有些時候在一些網站下載東西,點下載連接以後,結果瀏覽器將這個附件當成網頁打開了,裡面顯示的都是亂碼,這個問題也跟頭訊息有關。有時候瀏覽器會根據Content-type 來判斷是開啟還是儲存,這樣有時就會判斷錯誤(主要是網站設計者忘記寫Content-type)。其實,還有一個可以來指定該內容為附件、需要保存,這 個就是:Content-Disposition: attachment; filename="xxxxx"#​​

##在PHP中如何寫?

1、跳轉:

header("Location: http://www.example.com/");

2、指定內容:

header('Content-type: application/pdf');

3、附件:

// 指定内容为附件
header('Content-Disposition: attachment; filename="downloaded.pdf"');
// 打开文件,并输出
readfile('original.pdf');

最後要提醒大家注意一點,所有頭資訊都必須在體內容之前,如果一旦有任何輸出了的話,header函數寫的頭資訊就沒用了。例如,在檔案最開頭的

以上是php函數header的作用的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn