Chinaunix首页 | 论坛 | 博客
  • 博客访问: 18680432
  • 博文数量: 7460
  • 博客积分: 10434
  • 博客等级: 上将
  • 技术积分: 78178
  • 用 户 组: 普通用户
  • 注册时间: 2008-03-02 22:54
文章分类

全部博文(7460)

文章存档

2011年(1)

2009年(669)

2008年(6790)

分类:

2008-04-16 18:10:48

php中计算时间差有时候是件很麻烦的事!

不过我相信任何语言,只要撑握了其中规率就能找到办法,绝对是化腐朽为神奇的。

中经常要进行日期计算,下面总结几个工作中总结出的经验。先记下免得日后会忘!

1。第一种 计算时间段差(可以是分,秒,天)

$endtime="2004-09-09 18:10:00";
$d1=substr($endtime,17,2); //秒
$d2=substr($endtime,14,2); //分
$d3=substr($endtime,11,2); // 时
$d4=substr($endtime,8,2);  //日
$d5=substr($endtime,5,2); //月
$d6=substr($endtime,0,4); //年

echo $d1.'-'.$d2.'-'.$d3.'-'.$d5.'-'.$d4.'-'.$d6."n";

echo date("Y-m-d H:i:s")."n";
$now_T=mktime(date("H"),date("i"),date("s"),date("m"),date("d"),date("Y")); 
echo $now_T."n";
$now_S=mktime("$d3","$d2","$d1","$d5","$d4","$d6");
echo $now_S."n";
 $end_TS=($now_S-$now_T)/60;   //计算  剩余分钟
echo $end_TS;
?>

注 $startdate=mktime("0","0","0","1","1","2000"); 
   //所得到的值为从1970-1-1到参数时间的总秒数 那么 化为分 /60   时 /3600   天/3600/24  即可!   

若mktime()中的参数缺省,那表示使用当前日期。


2.  如果有就很容易了!若是MSSQL可以使用触发器!用专门计算日期差的函数datediff()便可!
若是MYSQL那就用两个日期字段的差值计算的计算结果保存在另一个数值型字段中!用时调用便可!

阅读(462) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~