php实现比较两个字符串日期大小的方法

5年以前  |  阅读数:306 次  |  编程语言: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分页显示制作详细讲解
SSH 登录失败:Host key verification failed
获取IMSI
将二进制数据转为16进制以便显示
获取IMEI
文件下载
贪吃蛇
双位运算符
PHP自定义函数获取搜索引擎来源关键字的方法
Java生成UUID
发送邮件
年的日历图
提取后缀名
在Zeus Web Server中安装PHP语言支持
让你成为最历害的git提交人
Yii2汉字转拼音类的实例代码
再谈PHP中单双引号的区别详解
指定应用ID以获取对应的应用名称
Python 2与Python 3版本和编码的对比
php封装的page分页类完整实例