有这么一个需求,指定日期是12月12日,在12月12号前我要执行A事件,在其后要执行B事件,怎样判断今天是在12月12日的前还是后?
程序如下:
<?php $year = 2010; $month = 12; // 月 $day = 12; // 日 $timeoffset = 8; // 与格林尼治时间 GMT 的时差 list($thisyear, $thismonth, $thisday) = explode('-', date('Y-n-j', time() + $timeoffset * 3600)); if(($thismonth > $month) || ($thismonth == $month && $thisday > $day) || $thisyear > $year) { echo '已经过了'; } elseif ($thismonth == $month && $thisday == $day && $thisyear == $year) { echo '就是今天了'; } else { echo '还没到'; } ?>
下面是带注释的代码:
//你还需要知道的另一个变量是年份,不过依你的意思应该是当年。 $timestamp = time(); $dateYear = date('Y', $timestamp);//当前年,依当前需要可以不需要比较,但有时也许会用到,比如你的记录不是当年要处理的 $dateMonth = date('n', $timestamp);//当前月份数字,没有前导零 $dateDay = date('j', $timestamp);//月份中的第几天,没有前导零 //剩下的就是比较了,比如你要比较的日期是 2007-03-01 $eventDate = '2007-03-01'; $eventDateArr = explode('-', $eventDate); $eventYear = intval($eventDateArr[0]); $eventMonth = intval($eventDateArr[1]); $eventDay = intval($eventDateArr[2]); //上面是年月日的拆分,根据实际情况可以调整,如果你直接可以得到就不需要这样取了。 //之后剩下的就是比较了,先比较年 if($dateYear == $eventYear) { //同年 if($dateMonth == $eventMonth) { //同月 if($dateDay == $eventDay) { //同一天,就是当前日期就是事件触发的日期 } elseif($dateDay > $eventDay) { //事件已经过期了 } else { //事件触发日期还没到 } } else { //之前或之后,再需要详细判断可以在这里比较哪个月份大 } } else { //之前或之后,再需要详细判断可以在这里比较哪个年份大 } //其实这种比较是最简单的逻辑判断,如果你在记录时间触发日期时记录的是 unix 时间戳,这里可以直接进行时间戳比较不过需要处理一下,因为时间戳是精确到秒的 //或者把你记录的日期及其后一天直接转化成 unix 时间戳,时分秒都用 0 ,和当前时间戳比较,细节判断就自己去分析吧,可用函数去查查手册里面 strtotime() ,时间相关函数参数很多,不过用过几次就熟悉了。
陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章
Windows 11 KB5054979中的新功能以及如何解決更新問題
3 週前ByDDD
如何修復KB5055523無法在Windows 11中安裝?
2 週前ByDDD
Inzoi:如何申請學校和大學
3 週前ByDDD
如何修復KB5055518無法在Windows 10中安裝?
2 週前ByDDD
Roblox:Dead Rails - 如何召喚和擊敗Nikola Tesla
4 週前By尊渡假赌尊渡假赌尊渡假赌

熱工具

SublimeText3 Linux新版
SublimeText3 Linux最新版

SublimeText3漢化版
中文版,非常好用

VSCode Windows 64位元 下載
微軟推出的免費、功能強大的一款IDE編輯器

Safe Exam Browser
Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

PhpStorm Mac 版本
最新(2018.2.1 )專業的PHP整合開發工具