php计算日期差

合集下载

thinkphp datediff用法

thinkphp datediff用法

thinkphp datediff用法标题:ThinkPHP框架中datediff函数的使用教程一、引言ThinkPHP是一个开源的PHP框架,以其灵活、高效、简洁的设计模式深受广大开发者喜爱。

在ThinkPHP框架中,datediff函数用于计算两个日期之间的差值,返回的是相差的天数。

本篇文档将详细介绍ThinkPHP框架中datediff函数的使用方法。

二、datediff函数的基本语法datediff函数的基本语法如下:```datediff($date1, $date2)```其中,- $date1:第一个日期,格式为"Y-m-d"或时间戳。

- $date2:第二个日期,格式为"Y-m-d"或时间戳。

三、datediff函数的使用示例以下是一些datediff函数的使用示例:1. 计算两个日期之间的天数差值:```$date1 = '2021-06-01';$date2 = '2021-06-30';$diff = datediff($date1, $date2);echo $diff; // 输出:30```2. 计算当前日期与给定日期之间的天数差值:```$date1 = strtotime('2021-06-01');$date2 = time();$diff = datediff($date1, $date2);echo $diff; // 输出:XX(根据实际日期输出)```四、注意事项在使用datediff函数时,需要注意以下几点:- 传入的日期参数必须是合法的日期格式或时间戳。

- 返回的结果是两个日期之间相差的天数,不考虑小时、分钟和秒。

- 如果第一个日期大于第二个日期,结果将为负数。

五、总结ThinkPHP框架中的datediff函数为我们提供了方便快捷的日期差值计算方式。

只要正确理解和使用这个函数,就能在开发过程中大大提升效率。

PHP获取今天、昨天、明天的日期

PHP获取今天、昨天、明天的日期

PHP获取今天、昨天、明天的⽇期<?phpecho "今天:".date("Y-m-d")."<br>";echo "昨天:".date("Y-m-d",strtotime("-1 day")), "<br>";echo "明天:".date("Y-m-d",strtotime("+1 day")). "<br>";echo "⼀周后:".date("Y-m-d",strtotime("+1 week")). "<br>";echo "⼀周零两天四⼩时两秒后:".date("Y-m-d G:H:s",strtotime("+1 week 2 days 4 hours 2 seconds")). "<br>";echo "下个星期四:".date("Y-m-d",strtotime("next Thursday")). "<br>";echo "上个周⼀:".date("Y-m-d",strtotime("last Monday"))."<br>";echo "⼀个⽉前:".date("Y-m-d",strtotime("last month"))."<br>";echo "⼀个⽉后:".date("Y-m-d",strtotime("+1 month"))."<br>";echo "⼗年后:".date("Y-m-d",strtotime("+10 year"))."<br>";>。

PHP获取当前日期和时间及格式化方法参数

PHP获取当前日期和时间及格式化方法参数

PHP获取当前日期和时间及格式化方法参数PHP获取当前日期和时间及格式化方法参数这篇文章主要介绍了PHP获取当前日期和时间及格式化方法参数,本文先是讲解了获取当前日期时间的方法,其后总结了格式化参数,需要的朋友可以参考下.使用函式 date() 实现复制代码代码如下:<?php echo $showtime=date("Y-m-d H:i:s");?>显示的格式: 年-月-日小时:分钟:秒相关时间参数:a - "am" 或是 "pm"A - "AM" 或是 "PM"d - 几日,二位数字,若不足二位则前面补零; 如: "01" 至 "31"D - 星期几,三个英文字母; 如: "Fri"F - 月份,英文全名; 如: "January"h - 12 小时制的小时; 如: "01" 至 "12"H - 24 小时制的小时; 如: "00" 至 "23"g - 12 小时制的小时,不足二位不补零; 如: "1" 至 12"G - 24 小时制的小时,不足二位不补零; 如: "0" 至 "23"i - 分钟; 如: "00" 至 "59"j - 几日,二位数字,若不足二位不补零; 如: "1" 至 "31"l - 星期几,英文全名; 如: "Friday"m - 月份,二位数字,若不足二位则在前面补零; 如: "01" 至 "12"n - 月份,二位数字,若不足二位则不补零; 如: "1" 至 "12"M - 月份,三个英文字母; 如: "Jan"s - 秒; 如: "00" 至 "59"S - 字尾加英文序数,二个英文字母; 如: "th","nd"t - 指定月份的.天数; 如: "28" 至 "31"U - 总秒数w - 数字型的星期几,如: "0" (星期日) 至 "6" (星期六) Y - 年,四位数字; 如: "1999"y - 年,二位数字; 如: "99"z - 一年中的第几天; 如: "0" 至 "365"【PHP获取当前日期和时间及格式化方法参数】。

PHP获取当前日期及本周一是几月几号的方法

PHP获取当前日期及本周一是几月几号的方法

PHP获取当前⽇期及本周⼀是⼏⽉⼏号的⽅法本⽂实例讲述了PHP获取当前⽇期及本周⼀是⼏⽉⼏号的⽅法。

分享给⼤家供⼤家参考,具体如下:<?phpheader("content-type:text/html;charset=utf-8");date_default_timezone_set('PRC');function getWeek($unixTime=''){$unixTime=is_numeric($unixTime)?$unixTime:time();$weekarray=array('⽇','⼀','⼆','三','四','五','六','七');return "星期".$weekarray[date('w',$unixTime)];}$var=getWeek();switch($var){case '星期天':$var=time();$var2=$var-(84600*6);echo "今天是".date("Y-m-d",$var)."号<br/>这个星期⼀是".date("Y-m-d",$var2)."号";break;case '星期⼀':$var=time();$var2=$var;echo "今天是".date("Y-m-d",$var)."号<br/>这个星期⼀是".date("Y-m-d",$var2)."号";break;case '星期⼆':$var=time();$var2=$var-84600;echo "今天是".date("Y-m-d",$var)."号<br/>这个星期⼀是".date("Y-m-d",$var2)."号";break;case '星期三':$var=time();$var2=$var-(84600*2);echo "今天是".date("Y-m-d",$var)."号<br/>这个星期⼀是".date("Y-m-d",$var2)."号";break;case '星期四':$var=time();$var2=$var-(84600*3);echo "今天是".date("Y-m-d",$var)."号<br/>这个星期⼀是".date("Y-m-d",$var2)."号";break;case '星期五':$var=time();$var2=$var-(84600*4);echo "今天是".date("Y-m-d",$var)."号<br/>这个星期⼀是".date("Y-m-d",$var2)."号";break;case '星期六':$var=time();$var2=$var-(84600*5);echo "今天是".date("Y-m-d",$var)."号<br/>这个星期⼀是".date("Y-m-d",$var2)."号";break;}>运⾏结果为:今天是2017-03-28号这个星期⼀是2017-03-27号PS:这⾥再为⼤家推荐⼏款时间及⽇期相关⼯具供⼤家参考使⽤:更多关于PHP相关内容感兴趣的读者可查看本站专题:《》、《》、《》、《》、《》、《》、《》、《》及《》希望本⽂所述对⼤家PHP程序设计有所帮助。

PHP日期时间函数大全

PHP日期时间函数大全
$lastweek_end = date("Y-m-d H:i:s",mktime(23,59,59,date("m"),date("d")-date("w")+7-7,date("Y")));
//本周
$thisweek_start = date("Y-m-d H:i:s",mktime(0, 0 , 0,date("m"),date("d")-date("w")+1,date("Y")));
?>
mktime($hour, $minute, $second, $month, $day, $year)
此函数的作用与getdate()的作用相反:它由一系列的日期与时间值生成一个UNIX时间标签(GMT时间1970年1月1日到现在消逝的秒数)。不用自变量时,它生成当前时间的UNIX时间标签。
今天是:Tuesday
echo date('D');
今天是:Tue
大写L表示判断今年是否闰年,布尔值,为真返回1,否则为0;
小写l表示当天是星期几的英文全写(Tuesday);
而使用大写D表示星期几的3个字符缩写(Tue)。
echo date('w');
今天星期:2
echo date('W');
// run some code
for ($x=0; $x<1000; $x++) {
$null = $x * $x;
}
// get ending value

PHP中的data()函数

PHP中的data()函数

PHP中的data()函数date()是我们常⽤的⼀个⽇期时间函数,下⾯我来总结⼀下关于date()函数的各种形式的⽤法,有需要学习的朋友可参考。

格式化⽇期date() 函数的第⼀个参数规定了如何格式化⽇期/时间。

它使⽤字母来表⽰⽇期和时间的格式。

这⾥列出了⼀些可⽤的字母:•d - ⽉中的天 (01-31)•m - 当前⽉,以数字计 (01-12)•Y - 当前的年(四位数)您可以在我们的 PHP Date 参考⼿册中,找到格式参数中可以使⽤的所有字母。

可以在字母之间插⼊其他字符,⽐如 "/"、"." 或者 "-",这样就可以增加附加格式了:代码如下复制代码echo date("Y/m/d");echo "";echo date("Y.m.d");echo "";echo date("Y-m-d");>以上代码的输出类似这样:2006/07/112006.07.112006-07-111,年-⽉-⽇代码如下复制代码echo date('Y-m-j');2007-02-6echo date('y-n-j');07-2-6⼤写Y表⽰年四位数字,⽽⼩写y表⽰年的两位数字;⼩写m表⽰⽉份的数字(带前导),⽽⼩写n则表⽰不带前导的⽉份数字。

代码如下复制代码echo date('Y-M-j');2007-Feb-6echo date('Y-m-d');2007-02-06⼤写M表⽰⽉份的3个缩写字符,⽽⼩写m则表⽰⽉份的数字(带前导0);没有⼤写的J,只有⼩写j表⽰⽉份的⽇期,⽆前导o;若需要⽉份带前导则使⽤⼩写d。

代码如下复制代码echo date('Y-M-j');2007-Feb-6echo date('Y-F-jS');2007-February-6th⼤写M表⽰⽉份的3个缩写字符,⽽⼤写F表⽰⽉份的英⽂全写。

PHP常用日期加减计算方法实例

PHP常用日期加减计算方法实例

PHP常⽤⽇期加减计算⽅法实例PHP常⽤⽇期加减计算⽅法实例实例总结了PHP常⽤⽇期加减计算⽅法。

分享给⼤家供⼤家参考,具体如下:PHP 标准的⽇期格式date("Y-m-d H:i:s");PHP 简单的⽇期加减计算如下:<?phpdate_default_timezone_set('PRC'); //默认时区echo"今天:",date("Y-m-d",time()),"\n";echo"今天:",date("Y-m-d",strtotime("18 june 2008")),"\n";echo"昨天:",date("Y-m-d",strtotime("-1 day")),"\n";echo"明天:",date("Y-m-d",strtotime("+1 day")),"\n";echo"⼀周后:",date("Y-m-d",strtotime("+1 week")),"\n";echo"⼀周零两天四⼩时两秒后:",date("Y-m-d G:H:s",strtotime("+1 week 2 days 4 hours 2 seconds")), "\n";echo"下个星期四:",date("Y-m-d",strtotime("next Thursday")),"\n";echo"上个周⼀:".date("Y-m-d",strtotime("last Monday"))."\n";echo"⼀个⽉前:".date("Y-m-d",strtotime("last month"))."\n";echo"⼀个⽉后:".date("Y-m-d",strtotime("+1 month"))."\n";echo"⼗年后:".date("Y-m-d",strtotime("+10 year"))."\n";?>运⾏结果:今天:2018-07-31今天:2008-06-18昨天:2018-07-30明天:2018-08-01⼀周后:2018-08-07⼀周零两天四⼩时两秒后:2018-08-09 15:15:40下个星期四:2018-08-02上个周⼀:2018-07-30⼀个⽉前:2018-07-01⼀个⽉后:2018-08-31⼗年后:2028-07-31PHP 进阶的⽇期加减计算<?php// 默认时区date_default_timezone_set('PRC');echo"今天: ", date('Y-m-d H:i:s'), "\n"; // 输出当前时间echo"明天: ", date('Y-m-d H:i:s', strtotime('+1 day')), "\n"; // 输出明天时间//strtotime 可以接受第⼆个参数,类型timestamp为指定⽇期echo date('Y-m-d H:i:s', strtotime("+1 day", strtotime('2017-11-11'))), "\n";// 这⾥+1 day 可以修改参数1为任何想需要的数// day也可以改成year(年)month(⽉)hour(⼩时)minute(分)second(秒)echo date('Y-m-d H:i:s', strtotime("+1 day +1 hour +1 minute")), "\n";?>运⾏结果:今天: 2018-07-31 11:37:11明天: 2018-08-01 11:37:112017-11-12 00:00:002018-08-01 12:38:11PHP ⾼级的计算⽇期时间差<?php// 默认时区date_default_timezone_set('PRC');echo date("Y-m-d H:i:s"), "\n";// ⽇期天数相加函数echo date('Y-m-d', strtotime('+1 day', strtotime('2016-09-12'))), "\n\n";echo strtotime('2016-09-12'), "\n";echo date("Y-m-d", '1473609600'), "\n";echo date("Y-m-d", '1573609600'), "\n";// ⽇期天数相加函数$d= "2016-09-12 10:12:20";echo date("Y-m-d", strtotime("$d +1 day")), "\n\n";// 把⽇期转换成时间截function date2time($d){$year=((int)substr("$d",0,4)); //取得年份$month=((int)substr("$d",5,2)); //取得⽉份$day=((int)substr("$d",8,2)); //取得⼏号return mktime(0,0,0,$month,$day,$year);}echo date2time("2016-09-12"), "\n\n";$date_1="2066-09-12";$date_2="2016-09-12";$Date_List_a1=explode("-",$date_1);$Date_List_a2=explode("-",$date_2);$d1=mktime(0,0,0,$Date_List_a1[1],$Date_List_a1[2],$Date_List_a1[0]); $d2=mktime(0,0,0,$Date_List_a2[1],$Date_List_a2[2],$Date_List_a2[0]); $Days=round(($d1-$d2)/3600/24);echo"$date_2 -> $date_1 相差: $Days 天", "\n";?>运⾏结果:2018-07-31 11:37:392016-09-1314736096002016-09-122019-11-132016-09-1314736096002016-09-12 -> 2066-09-12 相差: -17056 天。

PHP中比较两个时间的大小与日期的差值

PHP中比较两个时间的大小与日期的差值

PHP中⽐较两个时间的⼤⼩与⽇期的差值在这⾥我们全⽤到时间戳mktime(hour,minute,second,month,day,year,[is_dst])其参数可以从右向左省略,任何省略的参数都会被设置成本地⽇期和时间的当前值。

参数描述hour 可选。

规定⼩时。

minute 可选。

规定分钟。

second 可选。

规定秒。

month 可选。

规定⽤数字表⽰的⽉。

day 可选。

规定天。

year 可选。

规定年。

在某些系统上,合法值介于 1901 – 2038 之间。

不过在 php教程 5 中已经不存在这个限制了。

is_dst 可选。

如果时间在⽇光节约时间(dst)期间,则设置为1,否则设置为0,若未知,则设置为-1。

⾃ 5.1.0 起,is_dst 参数被废弃。

因此应该使⽤新的时区处理特性在⽇常⽣活中我们要经常⽐较时间的早晚,对于我们来说判断时间的⼤⼩很简单。

但是时间的⽐较不只是单纯的数字⼤⼩的⽐较,因此相对来说还是⽐较复杂。

那么在php中通过什么⽅式来⽐较两个时间的⼤⼩呢?要⽐较两个时间的⼤⼩,我们需要将时间转化为时间戳格式,然后再进⾏⽐较这是最常⽤的⽅法。

常⽤到的函数是:strtotime()语法格式:strtotime(time,now)如果time是绝对时间,则now参数不起作⽤如果time是相对时间,则相对应的参数则对应函数就是now来提供,如果没有提供now参数,那么相对应的时间就是当前的本地时间。

实例:⽐较两个绝对时间的⼤⼩代码:<?php$zero1=date(“y-m-d h:i:s”);$zero2=”2010-11-29 21:07:00′;echo “zero1的时间为:”.$zero1.”<br>”;echo “zero2的时间为:”.$zero2.”<br>”;if(strtotime($zero1)<strtotime($zero2)){echo “zero1早于zero2′;}else{echo “zero2早于zero1′;}?>输出结果:zero1的时间为:2010-11-30 21:12:55zero2的时间为:2010-11-29 21:07:00zero2早于zero1注:可以根据实例发散思维计算两个⽇期的差值奥运会倒计时,亚运会倒计时,⽣⽇倒计时这些倒计时都可以通过计算两个⽇期的差值来实现,同样需要⽤到strottime()函数。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

php中如何计算时间、日期差
在php中计算时间差有时候是件麻烦的事!不过只要你掌握了日期时间函数的用法那这些也就变的简单了:
一个简单的例子就是计算借书的天数,这需要php根据每天的日期进行计算,下面就来谈谈实现这种日期计算的几种方法:
(1) 如果有数据库就很容易了!若是MSSQL可以使用触发器!用专门计算日期差的函数datediff()便可!
若是MYSQL那就用两个日期字段的差值计算的计算结果保存在另一个数值型字段中!用时调用便可!
(2)如果没有数据库,那就得完全用php的时间日期函数!下面主要说明之:
例:计算1998年5月3日到1999-6-5的天数:
<? $startdate=mktime("0","0","0","5","3","1998"); //创建时间戳$enddate=mktime("0","0","0","6","5","1999");
//所得到的值为从1970-1-1到参数时间的总秒数:是整数.那么
//下面的代码就好编多了:
$days=round(($enddate-$startdate)/3600/24) ;
echo $days;
//days为得到的天数;
若mktime()中的参数缺省,那表示使用当前日期,这样便可计算从借书日期至今的天数.
php计算日期差天数
<?PHP
//今天与2004年10月27日相差多少天
$Date_1=date("Y-m-d");
$Date_2="2004-10-27";
$d1=strtotime($Date_1);
$d2=strtotime($Date_2);
$Days=round(($d1-$d2)/3600/24);
Echo "今天与2004年10月27日相差".$Days."天";
Echo "<br>";
//今天到2008年9月9日还有多少天
$Date_1=date("Y-m-d");
$Date_2="2008-09-09";
$d1=strtotime($Date_1);
$d2=strtotime($Date_2);
$Days=round(($d2-$d1)/3600/24);
Echo "今天到2008年9月9日还有".$Days."天";
?>。

相关文档
最新文档