php

2016-12-01 23 views
8

içinde 2 zaman damgası arasındaki farkı hesaplamak Benim tablo 2 zaman damgası kullanıyorum starttime veri türü zaman damgası ve geçerli zaman damgası. 2016/11/30 03:55:06 endtimetime: 2016- php startTime 2 zaman damgaları arasındaki farkı hesaplamak için nasıl 0000-00-00 00:00:00php

olarak bitişsaati veri türü-zaman damgası ve varsayılan 11-30 11:55:06

+1

Hi yardımcı olur, siz (saniye veya saat veya gün) istiyorsun aralığı? – Ronald

+0

Olası yinelenen [PHP'de iki tarih arasındaki saat farkını nasıl bulabilirim?] (Http://stackoverflow.com/questions/3763476/how-do-i-find-the-hour-difference-between-two- tarih-in-php) – Ronald

+2

Olası yinelenen [PHP'de dakika cinsinden zaman farkı nasıl alınır?] (http://stackoverflow.com/questions/365191/how-to-get-time-difference-in-minutes-in- php) – chus

cevap

3

Zaman damgalarınızı php strtotime kullanarak unix zaman damgasını (saniye cinsinden süre) dönüştürebilir ve ardından farkı alabilirsiniz. Artık saniye cinsinden farkı varsa ve gerekenler için dönüştürebilirsiniz ... saat, min, günler

http://php.net/manual/en/function.strtotime.php

örn:

$ts1 = strtotime($start); 
$ts2 = strtotime($end);  
$seconds_diff = $ts2 - $ts1;        
$time = ($seconds_diff/3600); 
6

Herhangi prosedürel yolu kaçınılmalıdır. tarih saat farkı Kullanım cepten yöntemi:

$datetime1 = new DateTime('2016-11-30 03:55:06');//start time 
$datetime2 = new DateTime('2016-11-30 11:55:06');//end time 
$interval = $datetime1->diff($datetime2); 
echo $interval->format('%Y years %m months %d days %H hours %i minutes %s seconds');//00 years 0 months 0 days 08 hours 0 minutes 0 seconds 

yapabilirsiniz ihtiyaçlarınıza göre kurulum farkı biçimi.

%Y - use for difference in year 
%m - use for difference in months 
%d - use for difference in days 
%H - use for difference in hours (24 hour format) 
%i - use for difference in minutes 
%s - use for difference in seconds 

Sen ihtiyaca göre yukarıdaki değerlerden herhangi birini kaldırabilirsiniz. Örneğin, yalnızca saat farkı ile ilgileniyorsanız ve bu farkın 24 saatten fazla olamayacağını biliyorsanız, yalnızca %H'u kullanın. saniyeler içinde toplam farkını olmasını istiyorsanız

o zaman kullanabilirsiniz:

echo $difference_in_seconds = strtotime('2016-11-30 11:55:06') - strtotime('2016-11-30 03:55:06');//28800 

İhtiyacınıza ve zaman farkı var istediğiniz nihai biçimi üzerine bağlı. Referans kontrol için

: http://php.net/manual/en/datetime.diff.php

Ben