首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Filemtime/cachetime我哪里错了?

Filemtime/cachetime我哪里错了?
EN

Stack Overflow用户
提问于 2010-07-10 19:15:56
回答 4查看 3.2K关注 0票数 2

我正在尝试做的是检查一个图像的年龄,如果它超过60分钟,然后运行另一个php页面来获取图像,否则如果不到60分钟就什么也不做。

脚本没有打开第二页(radartest.php)并运行它来更新图像,所以需要一个命令来告诉它作为脚本运行。

代码语言:javascript
复制
<?php
$imagename='./radar/auck0.png';
$cachetime = 3600;
    //Start the caching of the images........
    if (file_exists($imagename) and filemtime($imagename) + $cachetime > time()) {
          echo("radartest.php");
        } else {
  null; //do nothing
}
?>
EN

回答 4

Stack Overflow用户

发布于 2012-09-06 15:45:41

对filemtime返回的结果进行缓存。

这只是一种猜测,但是如果您过于频繁地使用这段代码,则可能必须使用clearstatcache函数:http://php.net/manual/en/function.clearstatcache.php

票数 5
EN

Stack Overflow用户

发布于 2010-07-10 20:03:14

另外,你使用的是不是应该是include('radartest.php');echo('radartest.php');

即。

代码语言:javascript
复制
<?php
$imagename='./radar/auck0.png';
$cachetime = 3600;
    //Start the caching of the images........
    if (file_exists($imagename) && (filemtime($imagename) + $cachetime) > time()) {
          include ("radartest.php");
        } else {
  null; //do nothing
}

?>

票数 1
EN

Stack Overflow用户

发布于 2010-07-10 19:40:40

不确定是否可能是运算符优先级。您使用的是"and“,它的优先级低于&&请尝试将表达式括起来以强制优先级:

代码语言:javascript
复制
if ((file_exists($imagename)) && ((filemtime($imagename) + $cachetime) > time())) {
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/3218956

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档