Section courante

A propos

Section administrative du site

Dans des langages de programmation Web comme ColdFusion, il existe de nombreuses fonctions de date inexistante dans d'autres langages. Une de celle-ci est la fonction du premier jour du mois depuis le début de l'année (FirstDayOfMonth). Permettant de connaitre ceci :

Année normal Année bissextile Position du mois Mois Jour/Mois
1 1 1 Janvier 31
32 32 2 Février 28/29
60 61 3 Mars 31
91 92 4 Avril 30
121 122 5 Mai 31
152 153 6 Juin 30
182 183 7 Juillet 31
213 214 8 Août 31
244 245 9 Septembre 30
274 275 10 Octobre 31
305 306 11 Novembre 30
335 336 12 Décembre 31

A l'aide du code source Visual Basic suivant, vous trouverez la réponse que vous souhaitez :

  1. Function IsLeapYear(myyear)
  2.     IsLeapYear = ((myyear AND 3) = 0) AND ((myyear MOD 100 <> 0) OR (myyear MOD 400 = 0))
  3. End Function 
  4.  
  5. Function FirstDayOfMonth(myyear,mymonth)
  6.  DayInMonth=Array(31,28,31,30,31,30,31,31,30,31,30,31)
  7.  Dim NumberOfDay,I
  8.  NumberOfDay=1
  9.  For I=1 to mymonth-1
  10.   If(I=2)and(IsLeapYear(myyear))Then NumberOfDay = NumberOfDay + 1
  11.   NumberOfDay = NumberOfDay + DayInMonth(I-1)
  12.  Next
  13.  FirstDayOfMonth=NumberOfDay
  14. End Function
  15.  
  16. Sub Main()
  17.  Dim myyear As Integer
  18.  Dim mymonth As Integer
  19.  Dim S As String
  20.  S = ""
  21.  For myyear=2000 to 2001
  22.   For mymonth=1 to 12
  23.    S = S & "Année " &CStr(myyear) &", mois " & CStr(mymonth) & ", jour du premier du mois: " & FirstDayOfMonth(myyear,mymonth) & vbCrLf
  24.   Next
  25.  Next 
  26.  MsgBox S
  27. End Sub

on obtiendra le résultat suivant :

Année 2000, mois 1, jour du premier du mois: 1
Année 2000, mois 2, jour du premier du mois: 32
Année 2000, mois 3, jour du premier du mois: 61
Année 2000, mois 4, jour du premier du mois: 92
Année 2000, mois 5, jour du premier du mois: 122
Année 2000, mois 6, jour du premier du mois: 153
Année 2000, mois 7, jour du premier du mois: 183
Année 2000, mois 8, jour du premier du mois: 214
Année 2000, mois 9, jour du premier du mois: 245
Année 2000, mois 10, jour du premier du mois: 275
Année 2000, mois 11, jour du premier du mois: 306
Année 2000, mois 12, jour du premier du mois: 336
Année 2001, mois 1, jour du premier du mois: 1
Année 2001, mois 2, jour du premier du mois: 32
Année 2001, mois 3, jour du premier du mois: 60
Année 2001, mois 4, jour du premier du mois: 91
Année 2001, mois 5, jour du premier du mois: 121
Année 2001, mois 6, jour du premier du mois: 152
Année 2001, mois 7, jour du premier du mois: 182
Année 2001, mois 8, jour du premier du mois: 213
Année 2001, mois 9, jour du premier du mois: 244
Année 2001, mois 10, jour du premier du mois: 274
Année 2001, mois 11, jour du premier du mois: 305
Année 2001, mois 12, jour du premier du mois: 335

Voir également

ColdFusion - Référence de procédures et fonctions - FIRSTDAYOFMONTH

Dernière mise à jour : Lundi, le 19 novembre 2012