萌新项目人 2018-02-02 12:54 采纳率: 100%
浏览 1130
已采纳

php改写为每40秒数字加10

<?php

$data=file("date.txt");

$ini=0;//初始值

$p=10;//每天递增的数

if(count($data)){

 //如果存在数据,则改写数据

 $data=split(",",$data[0]);

 if($data!=date("Y-m-d")){

  //不是当前日期,更新数据

  $fp=fopen("date.txt","w");

  $str=date("Y-m-d").",".($data[1]+$p);//字符串两个参数,用逗号分隔。例:2013-7-20 10;

  fputs($fp,$str);

  $ini=$data[1]+$p;

 }

}else{

 //否则直接写入数据

 $fp=fopen("date.txt","w");

 $str=date("Y-m-d").",".$ini;//字符串两个参数,用逗号分隔。例:2013-7-20 10;

 fputs($fp,$str);

}

echo $ini;//输出当日的数字

?>

上面的代码实现的是每次刷新自动加10,但是我想实现的是
自动的每隔40秒数字自动加10,将加完的数字写入txt覆盖原来txt的数值,之后从txt读取写入的这个数值并显示出来
不能受刷新影响,也不用缓存和cookie
求高手改写

  • 写回答

5条回答 默认 最新

  • Go 旅城通票 2018-02-02 14:31
    关注

    记得采纳,C币不够了可以站内短信联系我购买,:)。。。

     <?php
    
    $data=file("date.txt");
    
    $ini=0;//初始值
    
    $p=10;//每天递增的数
    
    if(count($data)){
    
     //如果存在数据,则改写数据
    
     $data=explode(",",$data[0]);
      $now=date("Y-m-d H:i:s");//当前时间
      $second=floor((strtotime($now)-strtotime($data[0]))%86400);//计算时间差,秒
    
      $ini=$data[1];
     if($second>=40){//上次写入和当前时间相差40s以上增加并写入文件
    
    
      $fp=fopen("date.txt","w");
    
      $str=date("Y-m-d H:i:s").",".($data[1]+$p);//字符串两个参数,用逗号分隔。例:2013-7-20 10;
    
      fputs($fp,$str);
    
      $ini=$data[1]+$p;
    
     }
    
    }else{
    
     //否则直接写入数据
    
     $fp=fopen("date.txt","w");
    
     $str=date("Y-m-d H:i:s").",".$ini;//字符串两个参数,用逗号分隔。例:2013-7-20 10;
    
     fputs($fp,$str);
    
    }
    
    echo $ini;//输出当日的数字
    
    ?>
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(4条)

报告相同问题?

悬赏问题

  • ¥15 素材场景中光线烘焙后灯光失效
  • ¥15 请教一下各位,为什么我这个没有实现模拟点击
  • ¥15 执行 virtuoso 命令后,界面没有,cadence 启动不起来
  • ¥50 comfyui下连接animatediff节点生成视频质量非常差的原因
  • ¥20 有关区间dp的问题求解
  • ¥15 多电路系统共用电源的串扰问题
  • ¥15 slam rangenet++配置
  • ¥15 有没有研究水声通信方面的帮我改俩matlab代码
  • ¥15 ubuntu子系统密码忘记
  • ¥15 保护模式-系统加载-段寄存器