本文目录一览:
php实现比较两个字符串日期大小的方法
本文实例讲述了php实现比较两个字符串日期大小的方法。分享给大家供大家参考。具体如下:
?php
function
dateBDate($date1,
$date2)
{
//
日期1是否大于日期2
$month1
=
date("m",
strtotime($date1));
$month2
=
date("m",
strtotime($date2));
$day1
=
date("d",
strtotime($date1));
$day2
=
date("d",
strtotime($date2));
$year1
=
date("Y",
strtotime($date1));
$year2
=
date("Y",
strtotime($date2));
$from
=
mktime(0,
0,
0,
$month1,
$day1,
$year1);
$to
=
mktime(0,
0,
0,
$month2,
$day2,
$year2);
if
($from
$to)
{
return
true;
}
else
{
return
false;
}
}
?
$date1
=
"2009-10-13";
$date=
mktime(0,
0,
0,
date("m",
strtotime($date1)),
date("d",
strtotime($date1)),
date("Y",
strtotime($date1)));
最终取得一个日期的
Unix
时间戳$date=1255392000。
很多时候做搜索的时候,搜索的时间不能大于当前日期,比较函数的写法大致和上面一个函数相同,具体如下:
function
dateBCurrent($date){
//日期是否大于当前日期
$currentDate=date("Y-m-d");
//获取当前日期
$cYear=date("Y",strtotime($currentDate));
$cMonth=date("m",strtotime($currentDate));
$cDay=date("d",strtotime($currentDate));
$year=date("Y",strtotime($date));
$month=date("m",strtotime($date));
$day=date("d",strtotime($date));
$currentUnix=mktime(0,0,0,$cMonth,$cDay,$cYear);
//当前日期的
Unix
时间戳
$dateUnix=mktime(0,0,0,$month,$day,$year);
//待比较日期的
Unix
时间戳
if($dateUnix=$currentUnix){
return
true;
}else{
return
false;
}
}
希望本文所述对大家的php程序设计有所帮助。
用php计算两个日期相差多少
php $startdate=strtotime(“2009-12-09”); $enddate=strtotime(“2009-12-05”); 上面的php时间日期函数strtotime已经把字符串日期变成了时间戳,这样只要让两数值相减,然后把秒变成天就可以了,比较的简单,如下: $days=round(($enddate-$startdate)/3600/24) ; echo $days; //days为得到的天数; ? 下面介绍另外一种方法: 上面判断的是两个日期的大小,下面则是判断生日的程序代码,得到的$n就是相距生日的天数. $birthday=“生日”; $birthday = preg_replace('/\d+/', Date('Y'), $birthday, 1); $d = 60*60*24; $n= floor((strtotime($birthday)-time())/$d); $n=$n+1; 还有如果相比的是现在的时间,就可以用time()函数,得到的就是现在的时间戳. 第二种情况呢,就是有数据库,这样就相对比较容易一些了!如果是MSSQL可以使用触发器!用专门计算日期差的函数datediff()计算便可! 如果是MYSQL那就用两个日期字段的时间戳值,进行计算后便可得到相差的天数了.方法和上面的代码很像.
php 代码 怎么比较日期大小
设定两个要比较的日期变量a和b,把两个日期变量后面都添加上一个同样的时间,然后用函数strtotime分别转换为时间戳,再比较时间戳的大小。
下面演示,左侧是代码,右侧是运行结果:
1、设a为2019年5月20日,b为2019年05月21日,运行结果是ba
2、设a为2019年5月21日,b为2019年05月20日,运行结果是ab
3、设a为2019年5月20日,b为2019年05月20日,运行结果是a=b
Php有没有办法比较两个时间的年月日是否相等
转化成相同的格式去比较就好了,
比如都是时间戳的格式,
$time1=2423424234;
$time2=123213213;
if(date("Y-m-d",$time1)===date("Y-m-d",$time2)){
echo "它们是同一天";
}