色婷婷狠狠18禁久久YY,CHINESE性内射高清国产,国产女人18毛片水真多1,国产AV在线观看

header php 返回

最近在學(xué)習(xí)PHP的過(guò)程中,接觸了一個(gè)非常重要的知識(shí)點(diǎn)——header()函數(shù)。相信很多PHP新手也會(huì)使用到這個(gè)函數(shù),它能夠返回一些關(guān)于HTTP響應(yīng)的信息,比如重定向、設(shè)置緩存等。 比如當(dāng)我們?cè)谝粋€(gè)PHP腳本中使用header('Location: index.php');函數(shù),就可以將用戶重定向到"index.php"頁(yè)面。再比如我們使用header('Cache-Control: no-cache, must-revalidate');函數(shù),就可以設(shè)置瀏覽器緩存。 下面我們就來(lái)具體看一下header()函數(shù)的使用方法和注意事項(xiàng)。 1. header()函數(shù)的語(yǔ)法 header()函數(shù)的語(yǔ)法如下: ``` header(string $header[, bool $replace = true[, int $http_response_code]]) ``` 參數(shù)說(shuō)明: - $header: 必須要填寫(xiě)的參數(shù),它為一段HTTP響應(yīng)頭字符串,可以填寫(xiě)多個(gè),多個(gè)參數(shù)之間用"\r\n"分隔。 - $replace: 可選參數(shù),默認(rèn)為true,表示替換之前已發(fā)送的HTTP響應(yīng)頭字符串。如果設(shè)置為false,則可以追加。 - $http_response_code: 可選參數(shù),設(shè)定該參數(shù)能夠控制HTTP狀態(tài)碼,比如可以重定向。 2. 使用header()函數(shù)需要注意的問(wèn)題 (1)header()函數(shù)必須在輸出任何內(nèi)容之前調(diào)用 因?yàn)镠TTP響應(yīng)頭必須要在HTTP響應(yīng)體之前先發(fā)送到瀏覽器。 舉個(gè)例子: `````` 上述代碼是錯(cuò)誤的,因?yàn)閔eader()函數(shù)被輸出的內(nèi)容影響,必須先輸出header()函數(shù),才能再輸出其他的內(nèi)容。 我們可以使用ob_start()函數(shù)來(lái)緩沖PHP輸出: `````` (2)header()函數(shù)必須在PHP腳本中的第一行調(diào)用之前 如果在PHP腳本中調(diào)用了new關(guān)鍵字,header()函數(shù)則不能起作用。因?yàn)閚ew會(huì)輸出內(nèi)容到瀏覽器中,這時(shí)候HTTP響應(yīng)頭已經(jīng)被輸出,再使用header()函數(shù)已經(jīng)沒(méi)有實(shí)際意義。 (3) header()函數(shù)必須在發(fā)送HTTP響應(yīng)體之前 像返回文件、列表等特殊的HTTP響應(yīng)體是不能使用header()函數(shù)來(lái)實(shí)現(xiàn)的,可以使用readfile()、fpassthru()、file()等函數(shù)。 3. 使用header()函數(shù)設(shè)置狀態(tài)碼和文檔類型 (1)設(shè)置狀態(tài)碼 我們可以使用header()函數(shù)將狀態(tài)碼設(shè)置為404。 `````` 我們也可以使用header()函數(shù)將狀態(tài)碼設(shè)置為302,重定向到另外一個(gè)頁(yè)面上。 `````` (2)設(shè)置文檔類型 header()函數(shù)還可以設(shè)置文檔的Content-Type。 `````` 不同類型的Content-Type可以在函數(shù)中進(jìn)行設(shè)置,例如: - text/html:用于顯示HTML源碼。 - application/pdf:用于在瀏覽器中顯示PDF文件。 - image/png:用于在瀏覽器中顯示PNG文件等。 4. 使用header()函數(shù)設(shè)置緩存 header()函數(shù)能夠非常方便地設(shè)置瀏覽器緩存。我們可以使用header()函數(shù)設(shè)置Expires和Cache-Control: (1)Expires 設(shè)置Expires可以告訴瀏覽器緩存過(guò)期的時(shí)間。 `````` 上述代碼可以將瀏覽器的緩存過(guò)期時(shí)間設(shè)置為1年。 (2)Cache-Control 使用Cache-Control可以更為靈活地設(shè)置緩存。 `````` 上述代碼將瀏覽器的緩存過(guò)期時(shí)間設(shè)置為1年,并且保證必須重新驗(yàn)證才能使用該緩存。 總結(jié) 在開(kāi)發(fā)過(guò)程中,合理地使用header()函數(shù)非常重要。我們應(yīng)該注意調(diào)用時(shí)機(jī),不要在輸出之后再使用頭部函數(shù);使用前先調(diào)用ob_start(),保留輸出;設(shè)置的時(shí)候要注意,特別是狀態(tài)碼的設(shè)置;還要合理設(shè)置文檔類型和緩存,提高用戶的體驗(yàn)。