1: | <?php
|
2: | |
3: | |
4: | |
5: | |
6: | |
7: |
|
8: | |
9: | |
10: | |
11: | |
12: | |
13: | |
14: | |
15: | |
16: | |
17: |
|
18: | function smarty_make_timestamp($string)
|
19: | {
|
20: | if (empty($string)) {
|
21: |
|
22: | return time();
|
23: | } elseif ($string instanceof DateTime
|
24: | || (interface_exists('DateTimeInterface', false) && $string instanceof DateTimeInterface)
|
25: | ) {
|
26: | return (int)$string->format('U');
|
27: | } elseif (strlen($string) === 14 && ctype_digit($string)) {
|
28: |
|
29: | return mktime(
|
30: | substr($string, 8, 2),
|
31: | substr($string, 10, 2),
|
32: | substr($string, 12, 2),
|
33: | substr($string, 4, 2),
|
34: | substr($string, 6, 2),
|
35: | substr($string, 0, 4)
|
36: | );
|
37: | } elseif (is_numeric($string)) {
|
38: |
|
39: | return (int)$string;
|
40: | } else {
|
41: |
|
42: | $time = strtotime($string);
|
43: | if ($time === -1 || $time === false) {
|
44: |
|
45: | return time();
|
46: | }
|
47: | return $time;
|
48: | }
|
49: | }
|
50: | |