溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

php中header的作用是什么

發(fā)布時間:2020-10-15 17:06:54 來源:億速云 閱讀:232 作者:小新 欄目:編程語言

這篇文章主要介紹了php中header的作用是什么,具有一定借鑒價值,需要的朋友可以參考下。希望大家閱讀完這篇文章后大有收獲。下面讓小編帶著大家一起了解一下。

header — 發(fā)送原生 HTTP 頭

void header ( string $string [, bool $replace = true [, int $http_response_code ]] )

參數(shù):

string

  有兩種特別的頭。第一種以"HTTP/"開頭的 (case is not significant),將會被用來計算出將要發(fā)送的HTTP狀態(tài)碼。 例如在 Apache 服務(wù)器上用 PHP 腳本來處理不存在文件的請求(使用 ErrorDocument 指令), 就會希望腳本響應(yīng)了正確的狀態(tài)碼。

<?php
     header("HTTP/1.0 404 Not Found");
?>

  第二種特殊情況是"Location:"的頭信息。它不僅把報文發(fā)送給瀏覽器,而且還將返回給瀏覽器一個 REDIRECT(302)的狀態(tài)碼,除非狀態(tài)碼已經(jīng)事先被設(shè)置為了201或者3xx。

<?php
header("Location: http://www.example.com/"); /* Redirect browser */

/* Make sure that code below does not get executed when we redirect. */
exit;
?>

replace

  可選參數(shù) replace 表明是否用后面的頭替換前面相同類型的頭。 默認情況下會替換。如果傳入 FALSE,就可以強制使相同的頭信息并存。例如:

<?php
     header('WWW-Authenticate: Negotiate');
     header('WWW-Authenticate: NTLM', false);
 ?>

http_response_code

  強制指定HTTP響應(yīng)的值。注意,這個參數(shù)只有在報文字符串(string)不為空的情況下才有效。

header函數(shù)的常見用處有以下幾點:

  1、重定向

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

  2、指定內(nèi)容:

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

  3、附件:

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

    //指定內(nèi)容為附件,指定下載顯示的名字

    header('Content-Disposition: attachment; filename="downloaded.pdf"');

    //打開文件,并輸出

    readfile('original.pdf');

    以上代碼可以在瀏覽器產(chǎn)生文件對話框的效果

  4、讓用戶獲取最新的資料和數(shù)據(jù)而不是緩存

    header("Cache-Control: no-cache, must-revalidate"); // HTTP/1.1
    header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");   // 設(shè)置臨界時間

<?php
header('HTTP/1.1 200 OK'); // ok 正常訪問
header('HTTP/1.1 404 Not Found'); //通知瀏覽器 頁面不存在
header('HTTP/1.1 301 Moved Permanently'); //設(shè)置地址被永久的重定向 301
header('Location: http://www.ithhc.cn/'); //跳轉(zhuǎn)到一個新的地址
header('Refresh: 10; url=http://www.ithhc.cn/'); //延遲轉(zhuǎn)向 也就是隔幾秒跳轉(zhuǎn)
header('X-Powered-By: PHP/6.0.0'); //修改 X-Powered-By信息
header('Content-language: en'); //文檔語言
header('Content-Length: 1234'); //設(shè)置內(nèi)容長度
header('Last-Modified: '.gmdate('D, d M Y H:i:s', $time).' GMT'); //告訴瀏覽器最后一次修改時間
header('HTTP/1.1 304 Not Modified'); //告訴瀏覽器文檔內(nèi)容沒有發(fā)生改變
 
###內(nèi)容類型###
header('Content-Type: text/html; charset=utf-8'); //網(wǎng)頁編碼
header('Content-Type: text/plain'); //純文本格式
header('Content-Type: image/jpeg'); //JPG、JPEG 
header('Content-Type: application/zip'); // ZIP文件
header('Content-Type: application/pdf'); // PDF文件
header('Content-Type: audio/mpeg'); // 音頻文件 
header('Content-type: text/css'); //css文件
header('Content-type: text/javascript'); //js文件
header('Content-type: application/json'); //json
header('Content-type: application/pdf'); //pdf
header('Content-type: text/xml'); //xml
header('Content-Type: application/x-shockw**e-flash'); //Flash動畫
 
######
 
###聲明一個下載的文件###
header('Content-Type: application/octet-stream');
header('Content-Disposition: attachment; filename="ITblog.zip"');
header('Content-Transfer-Encoding: binary');
readfile('test.zip');
######
 
###對當前文檔禁用緩存###
header('Cache-Control: no-cache, no-store, max-age=0, must-revalidate');
header('Expires: Mon, 26 Jul 1997 05:00:00 GMT');
######
 
###顯示一個需要驗證的登陸對話框### 
header('HTTP/1.1 401 Unauthorized'); 
header('WWW-Authenticate: Basic realm="Top Secret"'); 
######
 
 
###聲明一個需要下載的xls文件###
header('Content-Disposition: attachment; filename=ithhc.xlsx');
header('Content-Type: application/vnd.openxmlformats-officedocument.spreadsheetml.sheet');
header('Content-Length: '.filesize('./test.xls')); 
header('Content-Transfer-Encoding: binary'); 
header('Cache-Control: must-revalidate'); 
header('Pragma: public'); 
readfile('./test.xls'); 
######
?>

感謝你能夠認真閱讀完這篇文章,希望小編分享php中header的作用是什么內(nèi)容對大家有幫助,同時也希望大家多多支持億速云,關(guān)注億速云行業(yè)資訊頻道,遇到問題就找億速云,詳細的解決方法等著你來學(xué)習(xí)!

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI