差異

2014-10-28 17 views
1

日期被存儲在數據庫中以這種格式差異

month/day/year - hour:minute AM/PM 

例子:

10/06/2014 - 07:25 AM 
10/08/2014 - 09:30 AM 

我想找到x天y中的日期之間的差小時z分鐘

+0

你有周圍的連字符'-'放置日期和時間 – cuSK 2014-10-28 18:00:49

+0

是的,我認爲那之間的那些空間主要問題我無法找到正確的輸出 – Rejin 2014-10-28 18:05:22

+0

嘗試[碳](https://github.com/briannesbitt/Carbon) – charlietfl 2014-10-28 18:20:50

回答

1

必須先使用函數date_create_from_format()將日期格式化爲php日期,並使用面向對象函數$interval->format()找到差異,格式爲%

使用這個簡單的PHP代碼:

$format = "m/d/Y - h:i A"; 
$date1 = "10/06/2014 - 07:25 AM"; 
$date2 = "10/08/2014 - 09:30 AM"; 
$date1 = date_create_from_format($format, $date1); 
$date2 = date_create_from_format($format, $date2); 
$interval = date_diff($date1, $date2); 
echo $interval->format('%d days %h hours %i minutes'); 

這將使你在x天的日期差Y小時ž分鐘,你希望它是。

併爲您的信息,該date formatsinteval formats可以在這些鏈接中找到。他們都是PHP手冊。

+0

+1爲您的幫助和謝謝 – Rejin 2014-10-28 19:11:28

+0

@Rejin謝謝:) – cuSK 2014-10-28 19:13:19

0

使用DATEDIFF(datepart,startdate,enddate) 如果它是通用數據庫查詢。但如果是PHP操作,則使用date_diff。

在你的問題的情況下,只要把

DATEDIFF(m dd hh, "10/06/2014 -07:25AM", "10/08/2014 - 09:30 AM") 

對於一般的數據庫查詢