比較兩個日期
在數據庫裡已經把YMD分成數字.如Y=2020 M=1 D=1
我現在把它取出來後,顯示成 daydiff=date( "$nowyr"."$nowmon"."$nowdt") - date("Ymd");
但是這樣相減後是數字運算為負,202011-20090305
我要怎麼樣才能轉換成20200101-20090305
即在數據庫中取出的時間與現在的時間作比較,日期相減.如果是當前時間之後的日期就為正,否則為負.
請大俠幫幫忙.
最佳答案[url=http://www.111cn.cn/bbs/space.php?username=doing]鏈接標記doing[/url]
[url=http://www.111cn.cn/bbs/space.php?uid=97304]鏈接標記[img]http://www.111cn.cn/server/avatar.php?uid=97304&size=small[/img][/url]$onetime = "2010-01-01 00:00:00";
if((strtotime($onetime)-time())<0)
{
//
}
elseif((strtotime($onetime)-time())>0)
{
//
}
else
{
//
}
D8888D回貼內容-------------------------------------------------------
$onetime = "2010-01-01 00:00:00";
if((strtotime($onetime)-time())<0)
{
//
}
elseif((strtotime($onetime)-time())>0)
{
//
}
else
{
//
}
D8888D回貼內容-------------------------------------------------------
要是我就不那麼做,可以考慮轉成時間戳[img]http://www.111cn.cn/bbs/images/smilies/default/victory.gif[/img]
D8888D回貼內容-------------------------------------------------------
我試過,但是出錯,
echo date ("M-d-Y", mktime (0,0,0,$nowdt,$nowmon,$nowyr))-date("Ymd");
D8888D回貼內容-------------------------------------------------------
$nowyr = 2020;
$nowmon = 1;
$nowdt = 1;
echo date( sprintf("%04d%02d%02d", $nowyr, $nowmon, $nowdt)) - date("Ymd");
復制代碼
D8888D回貼內容-------------------------------------------------------
時間戳 啊
D8888D回貼內容-------------------------------------------------------
mktime (0,0,0,$nowdt,$nowmon,$nowyr) - time()
D8888D回貼內容-------------------------------------------------------
時間戳
D8888D回貼內容-------------------------------------------------------
存日期的時候順便存個時間戳吧,日期減日期沒意義啊,年月日進位都是不一致的,減出來的值沒有意義的
D8888D回貼內容-------------------------------------------------------
$daydiff=(strtotime(date("$nowyr"."-"."$nowmon"."-"."$nowdt")) - strtotime(date("Y-m-d")))/86400;
我是這樣寫的,測試固定的數字好像沒什麼問題,但是年月日,數字位數有時候不一樣,不知道有沒有不成立的時候。哎!還不確定。。。。。。。。