Improved Code Sniffing (#928)
[openemr.git] / library / date_functions.php
blob64ca758d4cc8d3afae9c3f598625091db4621c80
1 <?php
2 // ============================================================
3 // dateformat
4 //
5 // return a formated string for date
6 // @args: string (date string), boolean (include day of week)
7 // (it uses $_SESSION['language_choice'] )
8 // @return: $date_string (string) - formated string
9 // Cristian Navalici lemonsoftware at gmail dot com
11 // For Hebrew must be implemented a special calendar functions
13 // 10.07.2007 - dateformat accepts now an argument
14 // ============================================================
16 function dateformat($strtime = '', $with_dow = false)
19 // without an argument, display current date
20 if ( !$strtime ) {
21 $strtime = strtotime('now');
24 // string date is formed by
25 // $dow + date(day) + $nom + date(year) or similar
27 // name the day of the week for different languages
28 $day = date ("w", $strtime); // 0 sunday -> 6 saturday
30 switch ($day) {
31 case 0: $dow = xl ('Sunday');
32 break;
33 case 1: $dow = xl ('Monday');
34 break;
35 case 2: $dow = xl ('Tuesday');
36 break;
37 case 3: $dow = xl ('Wednesday');
38 break;
39 case 4: $dow = xl ('Thursday');
40 break;
41 case 5: $dow = xl ('Friday');
42 break;
43 case 6: $dow = xl ('Saturday');
44 break;
47 // name of the month in different languages
48 $month = (int) date('m', $strtime);
50 switch ($month) {
51 case 1: $nom = xl ('January');
52 break;
53 case 2: $nom = xl ('February');
54 break;
55 case 3: $nom = xl ('March');
56 break;
57 case 4: $nom = xl ('April');
58 break;
59 case 5: $nom = xl ('May');
60 break;
61 case 6: $nom = xl ('June');
62 break;
63 case 7: $nom = xl ('July');
64 break;
65 case 8: $nom = xl ('August');
66 break;
67 case 9: $nom = xl ('September');
68 break;
69 case 10: $nom = xl ('October');
70 break;
71 case 11: $nom = xl ('November');
72 break;
73 case 12: $nom = xl ('December');
74 break;
77 // Date string format
78 // First, get current language title
79 $languageTitle = getLanguageTitle($_SESSION['language_choice']);
80 switch ($languageTitle) {
81 // standard english first
82 case getLanguageTitle(1):
83 $dt = date ("F j, Y", $strtime);
84 if ($with_dow) $dt = "$dow, $dt";
85 break;
86 case "Swedish":
87 $dt = date ("Y", $strtime) . " $nom " . date("d", $strtime);
88 if ($with_dow) $dt = "$dow $dt";
89 break;
90 case "Spanish":
91 case "Spanish (Spain)":
92 case "Spanish (Latin American)":
93 $dt = date ("d", $strtime) . " $nom " . date("Y", $strtime);
94 if ($with_dow) $dt = "$dow $dt";
95 break;
96 case "German":
97 $dt = date ("d", $strtime) . " $nom " . date("Y", $strtime);
98 if ($with_dow) $dt = "$dow $dt";
99 break;
100 case "Dutch":
101 $dt = date ("d", $strtime) . " $nom " . date("Y", $strtime);
102 if ($with_dow) $dt = "$dow $dt";
103 break;
104 // hebrew (israel) , display english NOT jewish calendar
105 case "Hebrew":
106 $dt = date ("d", $strtime) . " $nom " . date("Y", $strtime);
107 if ($with_dow) $dt = "$dow, $dt";
108 break;
109 // default case
110 default:
111 $dt = "$nom " . date ("d", $strtime) . ", " . date("Y", $strtime);
112 if ($with_dow) $dt = "$dow, $dt";
115 return $dt;