如何检查页面是否使用 php 缓存


How to check if a page is cached with php

...以及它是否在 30 天前缓存,

我正在使用以下代码:

 $page=get_headers('http://www.w3schools.com/php/func_date_strtotime.asp');

输出是这样的:

0=>HTTP/1.1 200 OK

1=>连接:关闭

2=>日期:2012 年 5 月 3 日星期四 10:51:00 GMT

3=>服务器:Microsoft-IIS/6.0

4=>微软办公网络服务器:5.0_Pub

5=>X供电者:ASP.NET

6=>杂注:无缓存

7=>内容长度:23643

8=>内容类型:文本/html

9=>到期: 星期四, 03 五月 2012 10:50:00 GMT

10=>Set-Cookie: ASPSESSIONIDSAARQQST=AAMAAHBBBHBELMHDCHNNLMFP; path=/

11=>缓存控制:无缓存

我读到编译指示缓存,并不一定意味着该页面不可缓存。

我想知道两件事:1) 如果页面被缓存2) 如果它是 30 天前缓存的。

我可以这样做吗

 $date1=gmdate("D, d M Y H:i:s", strtotime("30 days ago")) . " GMT";
  $date2=$page['Expires'];
  if($date1>$date2)
  {
    echo 'The page was cached for longer than 30 days';
   }

由于PHP是一种服务器端语言,因此无法使用PHP检查浏览器缓存(客户端)。所以你需要一些像Javascript这样的客户端脚本,而不是像PHP这样的服务器端编程。