关于时间计算的结总

yipeiwu_com6年前PHP代码库
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那就用两个日期字段的差值计算的计算结果保存在另一个数值型字段中!用时调用便可!

相关文章

PHP 截取字符串 分别适合GB2312和UTF8编码情况

1. 截取GB2312中文字符串 复制代码 代码如下:<?php //截取中文字符串 function mysubstr($str, $start, $len) { $t...

PHP中的错误处理、异常处理机制分析

例: 复制代码 代码如下: <?php $a = fopen('test.txt','r'); //这里并没有对文件进行判断就打开了,如果文件不存在就会报错 ?> 那么正确...

可兼容php5与php7的cURL文件上传功能实例分析

本文实例讲述了可兼容php5与php7的cURL文件上传功能。分享给大家供大家参考,具体如下: 为啥要写这个示例 最近修改一个项目,需要通过cURL上传文件。 记得之前做过类似实现的,于...

关于shopex同步ucenter的redirect问题,导致script不运行

首先此问题来自向这个帖子 http://hi.baidu.com/fire_love_live/item/247276cfda421217b67a24c7 需要说明的是,并非15处需要修...

组合算法的PHP解答方法

题目:组合算法:有一个数组a,有N 个元素,现在要求从中找出含有任意元素的所有组合个数。 解答:先看规律吧: 假设这个数组为array(1,2,3,4,5)那么M=5; 可能出现的组合为...