Duration(dateObj1 , dateObj2 )
Last updated September 29, 2011
Version: 2 | Requires: ColdFusion 5 | Library: DateLib
Description:
Adapted from original concept of Craig Girard's CF_SubtractDates located in the Developer Exchange.
This function takes two dates and produces a structure containing the difference in Days, hours, and minutes
Return Values:
Returns a structure containing the keys Days, Hours, and Minutes with their associated values.
Example:
<cfset endDate = "{ts '2001-12-01 05:00:56'}">
<cfset timeDiff = Duration(today, endDate)>
<cfoutput>
#today#<br>
#endDate#<br>
#timeDiff.days# Day(s) #timeDiff.hours# Hour(s) #timediff.minutes# Minute(s)<p></p>
</cfoutput>
Parameters:
| Name | Description | Required |
|---|---|---|
| dateObj1 | CF Date Object to compare | Yes |
| dateObj2 | CF Date Object to compare | Yes |
Full UDF Source:
<cfscript>
/**
* Duration(dateObj1, dateObj2)
Takes two date objects and returns a structure containing the duration of days, hours, and minutes.
* v2 mod by James Moberg to support seconds.
*
* @param dateObj1 CF Date Object to compare (Required)
* @param dateObj2 CF Date Object to compare (Required)
* @return Returns a structure containing the keys Days, Hours, and Minutes with their associated values.
* @author Chris Wigginton (cwigginton@macromedia.com)
* @version 2, September 29, 2011
*/
function Duration(dateObj1, dateObj2){
var dateStorage = dateObj2;
var DayHours = 0;
var DayMinutes = 0;
var HourMinutes = 0;
var timeStruct = structNew();
if (DateCompare(dateObj1, dateObj2) IS 1) {
dateObj2 = dateObj1;
dateObj1 = dateStorage;
}
timeStruct.days = DateDiff("d",dateObj1,dateObj2);
DayHours = timeStruct.days * 24;
timeStruct.hours = DateDiff("h",dateObj1,dateObj2);
timeStruct.hours = timeStruct.hours - DayHours;
DayMinutes = timeStruct.days * 1440;
HourMinutes = timeStruct.hours * 60;
timeStruct.minutes = DateDiff("n",dateObj1,dateObj2);
timeStruct.minutes = timeStruct.minutes - (DayMinutes + HourMinutes);
DayMinutes = timeStruct.days * 86400;
HourMinutes = (timeStruct.hours * 3600) + (timeStruct.minutes * 60);
timeStruct.seconds = DateDiff("s",dateObj1,dateObj2);
timeStruct.seconds = timeStruct.seconds - (DayMinutes + HourMinutes);
return timeStruct;
}
</cfscript>
Search CFLib.org
Latest Additions
Dave Anderson added
iniToStruct
20 day(s) ago
Dave Anderson added
deDupeArray
20 day(s) ago
Richard added
dice
22 day(s) ago
Isaac Dealey added
getRelative
a while ago
Top Rated
backupDatabase
Rated 5.0, 22 time(s)
indentXml
Rated 5.0, 10 time(s)
generateSsccAsn
Rated 5.0, 4 time(s)
highlightAndCrop
Rated 5.0, 4 time(s)