OVH Cloud OVH Cloud

dernier jour du mois

4 réponses
Avatar
seb
bonjour,

comment vérifier en php que l'on est le dernier jour du mois ? En tenant
compte, bien entendu, des mois de 28/29/30 ou 31 jours.

merci d'avance,
seb

4 réponses

Avatar
Olivier Miakinen

comment vérifier en php que l'on est le dernier jour du mois ? En tenant
compte, bien entendu, des mois de 28/29/30 ou 31 jours.


Non testé, mais cela devrait marcher (les mktime sont demandés pour midi
afin d'éviter les problèmes de changement d'heure lors du passage à
l'heure d'été ou retour). L'astuce c'est que l'on peut utiliser des
numéros de jours inférieurs à 1 et des numéros de mois supérieurs à 12
sans inconvénient, et que le dernier jour du mois c'est « la veille du
premier jour du mois suivant ».


/* date courante */
$today = getdate();

/* jour, mois, année */
$day = $today["mday"];
$month = $today["mon"];
$year = $today["year"];

/* Timestamp de ce midi */
$ts_today = mktime(12, 0, 0, $month, $day, $year);

/* Timestamp pour midi, le dernier jour du mois */
$ts_lastday = mktime(12, 0, 0, $month+1, 0, $year);

if ($ts_today == $ts_lastday) {
/* C'est le jour de la paye ! */
}

--
Olivier Miakinen
Non, monsieur le juge, je vous le jure : jamais je n'ai cité
Bruxelles dans ma signature.

Avatar
Denis Beauregard
Le 07 Dec 2004 15:55:54 GMT, "seb" écrivait dans
fr.comp.lang.php:

bonjour,

comment vérifier en php que l'on est le dernier jour du mois ? En tenant
compte, bien entendu, des mois de 28/29/30 ou 31 jours.


Un algorithme simple: vérifier si le lendemain est le premier.

En gros:

ajouter 1 à la date courante et utiliser les fonctions de PHP sur
les dates.


Denis

Avatar
Moustique
"seb" a écrit
bonjour,

comment vérifier en php que l'on est le dernier jour du mois ? En tenant
compte, bien entendu, des mois de 28/29/30 ou 31 jours.

merci d'avance,
seb


Bonjour,

Tout simple

if (date('t') == date('j') ){
echo "Nous sommes le dernier jour du mois.";
}

--
Stéphane
La souplesse d'esprit permet de s'adapter dans toutes circonstances.

http://www.velo-passion.com vive le vélo

Avatar
Olivier Miakinen

comment vérifier en php que l'on est le dernier jour du mois ? En tenant
compte, bien entendu, des mois de 28/29/30 ou 31 jours.


Tout simple

if (date('t') == date('j') ){
echo "Nous sommes le dernier jour du mois.";
}


En effet, on ne peut pas faire plus simple. Ça me semblait tellement
magique que je suis allé vérifier dans la doc :

http://fr.php.net/manual/fr/function.date.php
j Jour du mois sans les zéros initiaux 1 à 31
t Nombre de jours dans le mois 28 à 31

Bravo Moustique !