473,503 Members | 1,715 Online
Bytes | Software Development & Data Engineering Community
+ Post

Home Posts Topics Members FAQ

Calculating Date Differences Help Needed

What's a good way to calculate the number of days between two dates in
the following format:

2003-07-15
2003-08-02

I've looked at the PHP date functions but I'm still a bit lost...

Jul 16 '05 #1
6 9034
Yeah, I follow that - but I end up with a unix epoch date - how can I
determine how many days diff that represents? In other words, per
your suggestion I can get date1 and date2 and determine via mktime the
diff - but I still need to know how many days diff that is???

On Sun, 03 Aug 2003 03:18:26 GMT, Blaine HIlton
<bl***************@verizon.net> wrote:
What you need to do is check the mktime() function at
http://www.php.net/manual/en/function.mktime.php.

Basiclly you would use mktime and send the function the date and call
that date1 and then another mktime and call that date2. Then just
subtract. mktime() will give you the unix epoch date.
Also for a good example check out
http://www.befriend.com/code_gallery..._elapsed_time/, however
there are I believe 2 errors where a division sign should be a
multiplication.

Mine looks like:

//$divider['months'] = ( 60 * 60 * 24 * 365 / 12 );
$divider['months'] = ( 60 * 60 * 24 * 365 * 12 ); // cheanged
this one too
// $divider['weeks'] = ( 60 * 60 * 24 / 7 );
$divider['weeks'] = ( 60 * 60 * 24 * 7 ); // I changed / to *

and can be seen in action at http://www.webcalc.net/calc/0529.php.


Jul 16 '05 #2
I would say first check out the 3 links that I gave:

http://www.php.net/manual/en/function.mktime.php
http://www.befriend.com/code_gallery..._elapsed_time/
http://www.webcalc.net/calc/0529.php

If you read through there you will have it working. Once you have the
time from epoch for each date you subtract. That gives you the
seconds, then times by 60 for minutes, then 60 more for hours then 24
for days.

--
Blaine Hilton
http://www.webcalc.net/
On Sun, 03 Aug 2003 06:00:32 GMT, Ralph Freshour <ra***@primemail.com>
wrote:
Yeah, I follow that - but I end up with a unix epoch date - how can I
determine how many days diff that represents? In other words, per
your suggestion I can get date1 and date2 and determine via mktime the
diff - but I still need to know how many days diff that is???

On Sun, 03 Aug 2003 03:18:26 GMT, Blaine HIlton
<bl***************@verizon.net> wrote:
What you need to do is check the mktime() function at
http://www.php.net/manual/en/function.mktime.php.

Basiclly you would use mktime and send the function the date and call
that date1 and then another mktime and call that date2. Then just
subtract. mktime() will give you the unix epoch date.
Also for a good example check out
http://www.befriend.com/code_gallery..._elapsed_time/, however
there are I believe 2 errors where a division sign should be a
multiplication.

Mine looks like:

//$divider['months'] = ( 60 * 60 * 24 * 365 / 12 );
$divider['months'] = ( 60 * 60 * 24 * 365 * 12 ); // cheanged
this one too
// $divider['weeks'] = ( 60 * 60 * 24 / 7 );
$divider['weeks'] = ( 60 * 60 * 24 * 7 ); // I changed / to *

and can be seen in action at http://www.webcalc.net/calc/0529.php.


Jul 16 '05 #3
I did check out the links you gave me - I understand the epoch number
now - but when I do the math to get the number of days difference I
get a huge number:

// get todays date
$now = time();
print "<br>now: $now";
$then = mktime(0,0,0,8,15,2003);
print "<br>then: $then";
$diff = $now - $then;
print "<br>diff: $diff";
$min = $diff * 60;
print "<br>min: $min";
$hours = $min * 60;
print "<br>hours: $hours";
$days = $hours * 24;
print "<br>days: $days";

$days is a huge number and there is not that many days diff between
time() and august 15, 2003 - what am I not understanding here?
On Sun, 03 Aug 2003 07:23:52 GMT, Blaine HIlton
<bl***************@verizon.net> wrote:
I would say first check out the 3 links that I gave:

http://www.php.net/manual/en/function.mktime.php
http://www.befriend.com/code_gallery..._elapsed_time/
http://www.webcalc.net/calc/0529.php

If you read through there you will have it working. Once you have the
time from epoch for each date you subtract. That gives you the
seconds, then times by 60 for minutes, then 60 more for hours then 24
for days.


Jul 16 '05 #4
Ralph Freshour wrote:
I did check out the links you gave me - I understand the epoch number
now - but when I do the math to get the number of days difference I
get a huge number:

// get todays date
$now = time();
print "<br>now: $now";
$then = mktime(0,0,0,8,15,2003);
print "<br>then: $then";
$diff = $now - $then;
print "<br>diff: $diff";
$min = $diff * 60;
print "<br>min: $min";
$hours = $min * 60;
print "<br>hours: $hours";
$days = $hours * 24;
print "<br>days: $days";

$days is a huge number and there is not that many days diff between
time() and august 15, 2003 - what am I not understanding here?

What you're not understanding is the fact that his math was wrong ;) If
you've got 60 seconds in a minute, then there are 60 / 60 = 1 minute in
a minute, not 60 * 60 = 3600 minutes in a minute. Change all those * to
/ and it should work.

Jul 16 '05 #5
I got it - I finally got it to work...

Thanks...

On Sun, 03 Aug 2003 07:23:52 GMT, Blaine HIlton
<bl***************@verizon.net> wrote:
I would say first check out the 3 links that I gave:

http://www.php.net/manual/en/function.mktime.php
http://www.befriend.com/code_gallery..._elapsed_time/
http://www.webcalc.net/calc/0529.php

If you read through there you will have it working. Once you have the
time from epoch for each date you subtract. That gives you the
seconds, then times by 60 for minutes, then 60 more for hours then 24
for days.


Jul 16 '05 #6
Yes sorry about that / is a big difference then ;-)

--
Blaine

On Sun, 03 Aug 2003 10:35:48 -0400, Joshua Ghiloni
<jd***@SPAM.ME.AND.DIE.cwru.edu> wrote:
Ralph Freshour wrote:
I did check out the links you gave me - I understand the epoch number
now - but when I do the math to get the number of days difference I
get a huge number:

// get todays date
$now = time();
print "<br>now: $now";
$then = mktime(0,0,0,8,15,2003);
print "<br>then: $then";
$diff = $now - $then;
print "<br>diff: $diff";
$min = $diff * 60;
print "<br>min: $min";
$hours = $min * 60;
print "<br>hours: $hours";
$days = $hours * 24;
print "<br>days: $days";

$days is a huge number and there is not that many days diff between
time() and august 15, 2003 - what am I not understanding here?

What you're not understanding is the fact that his math was wrong ;) If
you've got 60 seconds in a minute, then there are 60 / 60 = 1 minute in
a minute, not 60 * 60 = 3600 minutes in a minute. Change all those * to
/ and it should work.


Jul 16 '05 #7

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

5
8790
by: Ron Adam | last post by:
Hi, I'm having fun learning Python and want to say thanks to everyone here for a great programming language. Below is my first Python program (not my first program) and I'd apreciate any...
10
6616
by: riki | last post by:
hello, i need to calculate num of days between 2 dates... i get separate parts of dates from html form, then i need to "make" begining and ending date and calculate difference between them......
12
23660
by: Anthony Robinson | last post by:
Is anyone aware of a function (system or user defined) that will calculate business days? For instance: I have a column in as table called DATE. I want to be able to add five business days to that...
1
4284
by: Tony Williams | last post by:
I have a table with two fields, txtvalue (a number field) and txtmonth ( a date/time field). I want to create a report that shows the difference in value between the value in txtvalue in one value...
1
2024
by: pauly | last post by:
Hello All, I have been trying to create a query that extracts data from a table and calculates the elapsed time between records. The table called "Imported_table". I need to be able to calculate...
1
1846
by: b.beeching | last post by:
Not sure if my subject is entirely accurate but here goes. I need to calculate the date difference between a date A and a date B... however date B relies entily on date A. EG: i have an advert...
6
8995
by: krishnakant Mane | last post by:
hello, I am strangely confused with a date calculation problem. the point is that I want to calculate difference in two dates in days. there are two aspects to this problem. firstly, I can't get...
1
1964
by: rodneyeid | last post by:
Hi, I have an attendance machine which saves records in an Access Database in the following format : UserID DATE/TIME Checktype where if checktype is 0 then its check in and if it is 1 then it...
5
8790
by: cbalian | last post by:
I am looking for a TSQL code that would calculate a specific date each month that varies based on the following condition: I need the result that would return the date of the Thursday after the...
0
7203
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
7281
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
7334
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
1
6993
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
5579
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...
1
5014
isladogs
by: isladogs | last post by:
The next Access Europe User Group meeting will be on Wednesday 1 May 2024 starting at 18:00 UK time (6PM UTC+1) and finishing by 19:30 (7.30PM). In this session, we are pleased to welcome a new...
0
3156
by: adsilva | last post by:
A Windows Forms form does not have the event Unload, like VB6. What one acts like?
0
1514
by: 6302768590 | last post by:
Hai team i want code for transfer the data from one system to another through IP address by using C# our system has to for every 5mins then we have to update the data what the data is updated ...
1
737
muto222
by: muto222 | last post by:
How can i add a mobile payment intergratation into php mysql website.

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.