将Cache-Control年龄转换为天,分或秒?

问题描述 投票:-1回答:1

我需要开发一个代码来识别给定URL中每个文件的缓存时间,例如this tool

为此,我使用PHP与CURL:

$website = 'https://stackoverflow.com';

$ch = curl_init($website);
curl_setopt($ch, CURLOPT_HEADER, 1); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
$resp = curl_exec($ch);
var_dump($resp);

但在响应中我没有看到缓存文件的时代,而cache control的目标是私有。

要解决此问题,我必须从页面正文中存在的每个图像文件,javascript,css中获取链接,并运行与上面相同的CURL代码。

最后会显示缓存控件,有些显示一个巨大的日期(最大年龄= 315360000)其他显示一个小日期(最大年龄= 604800),现在仍然知道如何转换和识别何时缓存控制是指日,分,年或秒?

php curl cache-control
1个回答
0
投票

一个可以从秒转换成人类可读的格式,如下所示:

sprintf('%02d:%02d:%02d', ($s/3600), ($s/60%60), $s%60);
© www.soinside.com 2019 - 2024. All rights reserved.