1

...そしてそれが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 => MicrosoftOfficeWebServer:5.0_Pub

5 => X-Powered-By:ASP.NET

6 =>プラグマ:キャッシュなし

7 =>コンテンツの長さ:23643

8 =>コンテンツタイプ:text / html

9 =>有効期限:2012年5月3日木曜日10:50:00 GMT

10 => Set-Cookie:ASPSESSIONIDSAARQQST = AAMAAHBBBHBELMHDCHNNLMFP; パス=/

11 =>キャッシュ制御:キャッシュなし

プラグマキャッシュを読みましたが、必ずしもページがキャッシュできないことを意味するわけではありません。

2つのことを知りたい: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';
   }
4

1 に答える 1

1

PHPはサーバー側の言語であるため、PHPを使用してブラウザキャッシュ(クライアント側)を確認することはできません。したがって、PHPのようなサーバー側のプログラミングではなく、Javascriptのようなクライアント側のスクリプトが必要です。

于 2012-05-03T11:19:41.753 に答える