[英]php to count the remaining time frame
我正在建立一个测验系统,
桌子上的字段是:
id,title,description,status,created,ended
逻辑是这样的:
一个测验只持续一周,它将自动在一周的最后一天结束(我想在星期六24:00),管理员应该在一周中的任何一天输入测验,如果它在周三输入说在01:00 pm,然后系统应该计算剩余的时间范围(在这种情况下它将是大约83小时)然后将其添加到当前时间()以插入到“已结束”字段。
我在正确的轨道上? 如果我是,我应该如何计算PHP中的剩余时间范围?
谢谢
您可以使用strtotime();
获取时间戳strtotime();
并使用参数'下周六',所以你可以通过这样做来计算剩余的时间:
$timeRemaining = strtotime('next saturday') - time();
这将给你一个以秒为单位的时间戳,你可以除以3600来获得时间。
在PHP> = 5.3.0上,您可以使用函数date_diff
在以前的版本中,您可以使用类似的东西
$date1 = time();
$date2 = mktime(0,0,0,01,28,2011);
$diff = $date2 - $date1;
如果我已正确理解了这个问题,即你希望将结束日期存储在数据库中,那么这不仅可以实现
$ ended = strtotime(“+ 1周”);
请注意,星期六24:00不存在。 时间从周六的23:59:59到周日的00:00:00。
无需手动添加时间。 创建测验时,您可以使用$end_time = strtotime( 'next Sunday' );
获得测验结束的时间(周日早上00:00:00)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.