Php 我是否可以得到缓存文件的时间?

Php 我是否可以得到缓存文件的时间?,php,caching,Php,Caching,一个非常简单的问题,当一个文件被缓存到客户端的计算机上时,我需要时间 如果页面在缓存文件之后被修改,我想从服务器重新加载页面 可能吗?我完全不知道这件事。任何帮助都将不胜感激。您可以在html的某处嵌入时间戳: <body data-generated="<?php echo time();?>"> 我将把php实现留给您,因为我不知道您的需求,但可能是这样的: $clientCacheTime = isset($_GET['time'])? $_GET['time']

一个非常简单的问题,当一个文件被缓存到客户端的计算机上时,我需要时间

如果页面在缓存文件之后被修改,我想从服务器重新加载页面


可能吗?我完全不知道这件事。任何帮助都将不胜感激。

您可以在html的某处嵌入时间戳:

<body data-generated="<?php echo time();?>">
我将把php实现留给您,因为我不知道您的需求,但可能是这样的:

$clientCacheTime = isset($_GET['time'])? $_GET['time'] : null;
$data=[];
$data['invalidate'] = reloadRequired($clientCacheTime);
header('Content-Type: application/json');
echo json_encode($data);

两种常见的方法是发送
缓存控制
标题,或包含带有修订号(
)的客户端文件(如js或css文件)。这两种方法都允许您强制客户端重新加载文件,但要回答您的问题:不,您无法可靠地确定缓存文件的年龄,因为它发送给您的信息的准确性取决于客户端。这是一个很好的主意,我想说,让我试试这些。谢谢你的快速回复
$clientCacheTime = isset($_GET['time'])? $_GET['time'] : null;
$data=[];
$data['invalidate'] = reloadRequired($clientCacheTime);
header('Content-Type: application/json');
echo json_encode($data);