4 * -------------------------------------------------------------
10 * Purpose: factor difference between two dates in days, weeks,
12 * Input: date1 = "mm/dd/yyyy" or "yyyy/mm/dd" or "yyyy-mm-dd"
13 * date2 = "mm/dd/yyyy" or "yyyy/mm/dd" or "yyyy-mm-dd" or $smarty.now
14 * assign = name of variable to assign difference to
15 * interval = "days" (default), "weeks", "years"
16 * Examples: {date_diff date1="5/12/2003" date2=$smarty.now interval="weeks"}
17 * {date_diff date1="5/12/2003" date2="5/10/2008" assign="diff"}{$diff}
18 * -------------------------------------------------------------
20 function smarty_function_date_diff($params, &$smarty) {
21 $date1 = mktime(0,0,0,1,1,2000);
22 $date2 = mktime(0,0,0,date("m"),date("d"),date("Y"));
29 if($interval == "weeks") {
31 } elseif($interval == "years") {
35 $date1 = ((is_string($date1))?
strtotime($date1):$date1);
36 $date2 = ((is_string($date2))?
strtotime($date2):$date2);
39 $smarty->assign($assign,floor(($date2 - $date1)*$i));
41 return floor(($date2 - $date1)*$i);
This page took 0.292106 seconds and 4 git commands to generate.