Last-Modified(最后修改時間); Expires(有效期限); Pragma(編譯指示); Cache-Control(緩存控制);   前三個頭標屬于HTTP1.0標準。頭標Last-Modified使用UTC日期時間值。如果緩存系統發現Last-Mo " /> 国精产品一区一区三区mba桃花,97久久超碰精品国产,国产午夜精品全部视频播放

色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

PHP下利用header()函數設置瀏覽器緩存的代碼

這涉及到4種頭標類型:

Last-Modified(最后修改時間);
Expires(有效期限);
Pragma(編譯指示);
Cache-Control(緩存控制);
  前三個頭標屬于HTTP1.0標準。頭標Last-Modified使用UTC日期時間值。如果緩存系統發現Last-Modified值比頁面緩存版本的更接
近當前時間,他就知道應該使用來自服務器的新版本。

  Expires 表明了緩存版本何時應該過期(格林威治標準時間)。把它設置為一個以前的時間就會強制使用服務器上的頁面。

  Pragma生命了頁面數據應該如何被處理。可以這樣避免對頁面進行緩存:

  header("Pragma:no-cache");

  Cache-Co0ntrol 頭標是在HTTP1.1里添加的,能夠實現更細致的控制(還應該繼續使用HTTP1.0頭標)。Cache-Control的設置有
很多,如下表:
指令含義
public可以在任何地方緩存
private只能被瀏覽器緩存
no-cache不能在任何地方緩存
must-revalidate緩存必須檢查更新版本
proxy-revalidate代理緩存必須檢查更新版本
max-age內容能夠被緩存的時期,以秒表示
s-maxage覆蓋共享緩存的max-age設置
下面實例利用header()設置瀏覽器的緩存:
復制代碼 代碼如下:
<?php # Script 2.7 - view_tasks.php
// Connect to the database:
$dbc = @mysqli_connect ('localhost', 'username', 'password', 'test') OR die ('<p>Could not connect to the database!</p></body></html>');
// Get the latest dates as timestamps:
$q = 'SELECT UNIX_TIMESTAMP(MAX(date_added)), UNIX_TIMESTAMP(MAX(date_completed)) FROM tasks';
$r = mysqli_query($dbc, $q);
list($max_a, $max_c) = mysqli_fetch_array($r, MYSQLI_NUM);
// Determine the greater timestamp:
$max = ($max_a > $max_c) ? $max_a : $max_c;
// Create a cache interval in seconds:
$interval = 60 * 60 * 6; // 6 hours
// Send the header:
header ("Last-Modified: " . gmdate ('r', $max));
header ("Expires: " . gmdate ("r", ($max + $interval)));
header ("Cache-Control: max-age=$interval");
?>

1.連接數據庫后獲取數據表中最新的日期值date_added,date_completed,用UNIX_TIMESTAMP()函數將返回值轉化為整數然后獲取最大值賦予$max。
2.定義一個合理緩存時間。
復制代碼 代碼如下:
$interval=60*60*6

合理值屈居于頁面本身、訪問者的數量和頁面的更新頻率,以上代碼為6個小時。
3.發送Last-Modified頭標。
復制代碼 代碼如下:
header("Last-Modified:".gmdate("r",($max+$interval)));

gmdate()函數使用了參數"r"時,會根據HTTP規范返回相應的日期格式。
4.設置Expires頭標。
復制代碼 代碼如下:
header ("Expires: " . gmdate ("r", ($max + $interval)));

5.設置Cache_Control頭標。
復制代碼 代碼如下:
header ("Cache-Control: max-age=$interval");

php技術PHP下利用header()函數設置瀏覽器緩存的代碼,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 鹤峰县| 康乐县| 江安县| 九台市| 佳木斯市| 康马县| 来宾市| 雷波县| 绥德县| 小金县| 军事| 渝中区| 廉江市| 晋城| 旺苍县| 杂多县| 崇明县| 从化市| 江永县| 巴中市| 澄江县| 成都市| 房产| 乌什县| 渭南市| 鄯善县| 阿坝| 达孜县| 阜阳市| 齐河县| 河西区| 茂名市| 大兴区| 内乡县| 志丹县| 渭源县| 河间市| 思茅市| 福贡县| 会东县| 隆回县|