# Difference between 2 dates in seconds

Viewed   63 times

Possible Duplicates:
Number of seconds from now() to Sunday midnight
Calculates difference between two dates in PHP

Hello All,

In my project, I need to calculate the difference in seconds between two dates:

For Example :

``````\$firstDay = "2011-05-12 18:20:20";
\$secondDay = "2011-05-13 18:20:20";
``````

Then I should get 86400 Seconds That is 24 hours.

Similarly For

``````\$firstDay = "2011-05-13 11:59:20";
\$secondDay = "2011-05-13 12:00:20";
``````

It should return 60 Seconds.

I read lots of questions in the ` But they only deals` with the difference between 2 minute fields like 11:50:01 and 12:10:57

1
``````\$timeFirst  = strtotime('2011-05-12 18:20:20');
\$timeSecond = strtotime('2011-05-13 18:20:20');
\$differenceInSeconds = \$timeSecond - \$timeFirst;
``````

You will then be able to use the seconds to find minutes, hours, days, etc.

Wednesday, November 23, 2022
4

you need to escape the `a` and `t` as both have special meaning when used as formatting options in `date()`

``````echo date('M j at h:i a');
``````

See it in action

Monday, October 17, 2022
3

You don't need to change the php.ini file if you use `date_default_timezone_set()`. Just set it to the timezone you will be working in.

Something like this should go in a config file or on the page where you're working with dates (if it is only one page):

``````date_default_timezone_set('America/Los_Angeles');
``````
Friday, December 23, 2022
5

You can turn a date object into a long (milliseconds since Jan 1, 1970), and then use `TimeUnit` to get the number of seconds:

``````long diffInMs = endDate.getTime() - startDate.getTime();

long diffInSec = TimeUnit.MILLISECONDS.toSeconds(diffInMs);
``````

Edit: -Corrected the name of the variable diffInMs which was written diffInM(i)s in the second line.

Friday, December 23, 2022
1

First figure how many days there are between the two dates. Divide the number of days by 7 to get full weeks.

Now figure out if there's an extra week to be counted by finding taking the number of days modulus 7 to get any remaining days. If the first date plus remaining days falls in a different week, add an extra week on to the count.

``````void Main()
{

var first = new DateTime(2018, 04, 13);
var second = new DateTime(2018, 04, 16);

Console.WriteLine(weekDiff(first, second));
}

public int weekDiff(DateTime d1, DateTime d2, DayOfWeek startOfWeek = DayOfWeek.Monday)
{
var diff = d2.Subtract(d1);

var weeks = (int)diff.Days / 7;

// need to check if there's an extra week to count
var remainingDays = diff.Days % 7;
var cal = CultureInfo.InvariantCulture.Calendar;
var d1WeekNo = cal.GetWeekOfYear(d1, CalendarWeekRule.FirstFullWeek, startOfWeek);
var d1PlusRemainingWeekNo = cal.GetWeekOfYear(d1.AddDays(remainingDays), CalendarWeekRule.FirstFullWeek, startOfWeek);

if (d1WeekNo != d1PlusRemainingWeekNo)
weeks++;

return weeks;
}
``````
Sunday, October 23, 2022