Calcul du nombre de jours entre deux dates en asp

Soyez le premier à donner votre avis sur cette source.

Snippet vu 23 835 fois - Téléchargée 35 fois

Contenu du snippet

Ce bout de code permet de calculer le nombre de jours entre deux dates en ASP.
Le code est présenté sous forme d'une page ASP directement utilisable et affichant un résultat.

Source / Exemple :


<%
' ***************************
' Réalisé par Sébastien LAVIT
' ***************************

'Verification si une année est bissextile ou pas
function bissextile(annee)
	i = cint(annee)
	if (i mod 4 = 0 and i mod 100 <> 0 or i mod 400 = 0)then
		bissextile = true
	else
		bissextile = false
	end if
end function

'Calcul du nombre de jours pour chaque année séparant les deux dates
function nbjourannee(date1, date2)
	a1 = cint(date1(2))
	a2 = cint(date2(2))
	if (a1 = a2) then
		nbjourannee = 0
	else
		i = a1
		nbjourannee = 0
		while (i < a2)
			nbjourannee = nbjourannee + 365
			if (bissextile(i)) then
				nbjourannee = nbjourannee + 1
			end if
			i = i + 1
		wend
	end if
end function

'Calcul du nombre de jours par rapport au premier janvier de la date
function nbjanvier(ldate)
	nbmois = array("","0","31","59","90","120","151","181","212","243","273","304","334")
	j = cint(ldate(0))
	m = cint(ldate(1))
	a = cint(ldate(2))
	nbjanvier = cint(nbmois(m)) + j - 1
	if (bissextile(a) and m > 2) then
		nbjanvier = nbjanvier + 1
	end if
end function

'Calcul du nombre de jours entre deux dates
function nbjour(date1, date2)
	nbjour = nbjourannee(date1, date2) - nbjanvier(date1) + nbjanvier(date2)
end function

'Exemple d utilisation :
response.write(" Le nombre de jours entre les deux dates est : " & nbjour(array("12","10","2001"), array("25","12","2050")))
%>

A voir également

Ajouter un commentaire

Commentaires

Il existe une fonction déjà toute faite prête à l'emploi:
DateDiff
En effet, Bud!!! Code tout simplement inutile!!!
Tous ces efforts pour rien.
Comme le disait Bud, Datediff fait exactement le même travail et est très simple d'utilisation
Bien sur k'il sert a rien ds ce sens la mais ca sert a rien de dire voici un code ki fais ca en mettant juste l'appel d'une fonction existanten j'appelle pas ca un code
voici pourquoi ce code, au demeurant très satisfaisant sur le plan intellectuel, es t inutile :

Le nombre de jours entre les deux dates est : 17971
temps d'éxécution pour 10000 itérations avec ton code : 26,62891 secondes

Le nombre de jours entre les deux dates est : 17971
temps d'éxécution pour 10000 itérations avec la fonction datediff : 0,5 secondes

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.

Le fait d'être membre vous permet d'avoir des options supplémentaires.