反正我是否可以获得缓存文件的时间?

时间:2014-11-12 12:13:26

标签: php caching

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

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

有可能吗?我完全没有意识到这一点。任何帮助将不胜感激。

1 个答案:

答案 0 :(得分:1)

你可以在某个地方嵌入时间戳:

<body data-generated="<?php echo time();?>">

然后通过ajax请求检查服务器更新时间:

//jquery for berevity

$.get('invalidate_client_cache.php?time='+ $('body').data('generated'), function(data){
    if(data.invalidate){
        location.reload(true);
    }
}

我将把php实现留给你,因为我不知道你的要求,但它可能是这样的:

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