add DateTime support, clean up some logic

This commit is contained in:
monte.ohrt
2010-07-13 22:57:47 +00:00
parent db38a0aaec
commit 50637fccdd

View File

@@ -18,26 +18,24 @@ function smarty_make_timestamp($string)
{
if(empty($string)) {
// use "now":
$time = time();
return time();
} elseif (is_a($string,'DateTime')) {
return $string->getTimestamp();
} elseif (preg_match('/^\d{14}$/', $string)) {
// it is mysql timestamp format of YYYYMMDDHHMMSS?
$time = mktime(substr($string, 8, 2),substr($string, 10, 2),substr($string, 12, 2),
return mktime(substr($string, 8, 2),substr($string, 10, 2),substr($string, 12, 2),
substr($string, 4, 2),substr($string, 6, 2),substr($string, 0, 4));
} elseif (is_numeric($string)) {
// it is a numeric string, we handle it as timestamp
$time = (int)$string;
return (int)$string;
} else {
// strtotime should handle it
$time = strtotime($string);
if ($time == -1 || $time === false) {
// strtotime() was not able to parse $string, use "now":
$time = time();
return time();
}
return $time;
}
return $time;
}
?>