doukunsan5553 2012-07-02 17:59
浏览 31

PHP倒计时到期按钮或链接

I'm trying to create a button or link that will expire after 1 hour.

I'm setting the time the visitor hit the page with a cookie.

Most of the code examples I have seen only give the time that has passed and not the time left.

example: Link will expire in 0 hours, 30, mins and 34 seconds

This is just some rough code :

//Setting cookie example
setcookie('previous_time', time(), time()+3600*1);


$current_time = time();
$previous_time = $_COOKIE['previous_time'];

$time_diff = $current_time-$previous_time;

This is where I'm stuck, I have no idea how to convert the $time_diff timestamp into a format like "expire in 0 hours, 30, mins and 34 seconds"

Many thanks.

  • 写回答

3条回答 默认 最新

  • dongmiao260399 2012-07-02 18:07
    关注

    To format your time difference, just do some math, since your $time_diff is just the number of seconds between the two times:

    $hours    = floor( $time_diff / 3600);
    $minutes  = floor( ($time_diff / 60) % 60); 
    $seconds  = $time_diff % 60;
    
    echo "$hours hours, $minutes minutes, $seconds seconds
    ";
    

    So, a value of 20712 would produce :

    5 hours, 45 minutes, 12 seconds 
    
    评论

报告相同问题?