當前位置: 首頁> 最新文章列表> PHP header函數用法全解析及實戰示例

PHP header函數用法全解析及實戰示例

gitbox 2025-06-24

1. 使用header函數實現頁面重定向

在PHP中,header函數用於發送原始的HTTP頭信息。一個常見的應用是通過設置Location頭,實現頁面跳轉。

示例


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

示例中,header函數將Location頭設置為目標URL,隨後用exit停止腳本執行,確保重定向生效。

注意事項

1. 使用header發送頭信息前,不能有任何輸出,包括空格或換行符。

2. 重定向後腳本不會自動停止,需要手動調用exit或die。

3. Location頭可以指定站內或站外的URL。

2. 設置響應頭信息

header函數還可設置Content-Type、Cache-Control等HTTP響應頭。

示例


header('Content-Type: application/json');
echo json_encode(['name' => 'John', 'age' => 30]);

此示例將響應類型設置為JSON,並輸出對應的JSON數據。

注意事項

1. 設置響應頭應在任何輸出前調用。

2. Content-Type可根據需求設置為'application/json'、'text/html'等。

3. 設置HTTP狀態碼

通過header函數設置HTTP狀態碼,告訴客戶端請求的處理結果。

示例


header('HTTP/1.1 404 Not Found');
echo 'Sorry, the page you requested could not be found.';

示例設置狀態碼為404,提示頁面未找到。

注意事項

1. 選擇合適的狀態碼及原因短語非常重要。

2. 未設置時,默認狀態碼為200 OK。

4. 控制緩存

header函數也能設置緩存相關的HTTP頭,優化頁面加載速度。

示例


header('Cache-Control: max-age=3600');
header('Expires: ' . gmdate('D, d M Y H:i:s', time() + 3600) . ' GMT');
echo 'This page is cached for 1 hour.';

設置緩存有效期為1小時,提升訪問效率。

注意事項

1. 根據實際需求合理配置緩存指令和參數。

2. Cache-Control與Expires結合使用能更有效控制緩存。

5. 實現文件下載

利用header函數設置Content-Disposition,實現文件下載功能。

示例


header('Content-Disposition: attachment; filename="example.txt"');
echo 'This is the content of example.txt file.';

示例中,瀏覽器會彈出下載對話框,保存為example.txt。

注意事項

1. 確保Content-Disposition和文件名設置正確。

2. 大文件建議逐行讀取輸出,避免內存佔用過高。

總結

本文匯總了PHP中header函數的多種應用場景,包含頁面重定向、響應頭設置、狀態碼配置、緩存控制和文件下載等。掌握這些技巧能讓開發者更靈活地處理HTTP請求與響應,提升網站功能和用戶體驗。