Informations :
Dates
- Publish : : Friday 10 july 2020
- Modification : Friday 10 july 2020
- 249 views
Share :
J'ai fais une fonction PHP qui ne sert à rien puisqu'il y a une commande PHP pour vérifier si une année est bisextile.
Règle actuelle pour savoir si une année est bisextile
Depuis l'ajustement du calendrier grégorien, l'année n'est bissextile (comportant 366 jours) que dans l'un des deux cas suivants :
- si l'année est divisible par 4 et non divisible par 100 ;
- si l'année est divisible par 400 ("divisible" signifie que la division donne un nombre entier, sans reste).
Sinon, l'année n'est pas bissextile : elle a la durée habituelle de 365 jours (elle est dite année commune).
Le script que j'ai écris est le suivant (pour ma compréhension personnelle) :
Script avec 23 lignes
001function bisextile($year) { 002 003 //$value_php = date("L", mktime(0, 0, 0, 1, 1, $year)); 004 005 // Soit divisible / 4 (doit retourner un entier) et non divisible / 100 006 $value_4 = $year / 4; 007 $value_100 = $year / 100; 008 009 // Soit divisible / 400 (doit retourner un entier) 010 $value_400 = $year / 400; 011 012 // On verifie 013 $value = 0; 014 015 $value_1 = is_int($value_4) && is_float($value_100) ? 1 : 0; 016 $value_false = is_int($value_4) && !is_float($value_100) ? 1 : $value_1; 017 $value_2 = is_int($value_400) ? 1 : 0; 018 019 $value = $value_1 == 1 || $value_2 == 1 ? 1 : 0; 020 021 return $value; 022 023}
On envoie la commande de cette manière :
Script avec 2 lignes
001# echo bisextile(2024); 002echo bisextile(2100); # Et pourtant ;)
Retourne 0
ou 1
:)
Sinon la commande PHP est la suivante ;)
Script avec 2 lignes
001$year = '2100'; 002date("L", mktime(0, 0, 0, 1, 1, $year));
Retourne false
ou true
^^ false
en l'occurrence :) 2100 ne sera pas une année bisextile.
- J'ai fais une page ici html qui liste quelques années, milles ans ^^
- PHP.Net : function.date html
- WikipediA : Année bissextile html