php - Time remaining until specific time from current time of page load

后端 未结 3 1839
梦毁少年i
梦毁少年i 2020-12-03 04:08

I have to admit that having not even tried to code this myself this question may be a annoying to some but I\'m very surprised that I wasn\'t able to find a good example on

相关标签:
3条回答
  • 2020-12-03 04:14

    first you'll need to calculate the difference in seconds using time() and strtotime(). Then you can translate those seconds into days/hours/minutes/seconds.

    0 讨论(0)
  • 2020-12-03 04:20

    I'd use the DateInterval and DateTime functions:

    $now = new DateTime();
    $future_date = new DateTime('2011-05-11 12:00:00');
    
    $interval = $future_date->diff($now);
    
    echo $interval->format("%a days, %h hours, %i minutes, %s seconds");
    

    You'll need a version of PHP that's at least 5.3 to do it this way - otherwise, do what helloandre recommends.

    0 讨论(0)
  • 2020-12-03 04:28

    I think it will usefull

    $startdate="2008-06-22 20:38:25"; 
    $enddate="2008-06-29 21:38:49"; 
    
    $diff=strtotime($enddate)-strtotime($startdate); 
    echo "diff in seconds: $diff<br/>\n<br/>\n"; 
    
    // immediately convert to days 
    $temp=$diff/86400; // 60 sec/min*60 min/hr*24 hr/day=86400 sec/day 
    
    // days 
    $days=floor($temp); echo "days: $days<br/>\n"; $temp=24*($temp-$days); 
    // hours 
    $hours=floor($temp); echo "hours: $hours<br/>\n"; $temp=60*($temp-$hours); 
    // minutes 
    $minutes=floor($temp); echo "minutes: $minutes<br/>\n"; $temp=60*($temp-$minutes); 
    // seconds 
    $seconds=floor($temp); echo "seconds: $seconds<br/>\n<br/>\n"; 
    
    echo "Result: {$days}d {$hours}h {$minutes}m {$seconds}s<br/>\n"; 
    echo "Expected: 7d 0h 0m 0s<br/>\n"; 
    
    
    echo "time isss".time();
    
    echo   $date = date('Y-m-d H:i:s')";
    
    ?>
    
    0 讨论(0)
提交回复
热议问题