FONCTION QUI RETOURNE L'AGE AVEC LE JOUR/MOIS/ANNÉE DE NAISSANCE

Signaler
Messages postés
2350
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
18 avril 2015
-
Messages postés
107
Date d'inscription
mardi 29 novembre 2005
Statut
Membre
Dernière intervention
8 mai 2009
-
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/41620-fonction-qui-retourne-l-age-avec-le-jour-mois-annee-de-naissance

Messages postés
107
Date d'inscription
mardi 29 novembre 2005
Statut
Membre
Dernière intervention
8 mai 2009

Pourquoi ne pas mettre un OU alors ?

function EstBissextile($annee) {
return ( (int) $annee%4 === 0 OR $annee%400 !== 0 );
}
Messages postés
2350
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
18 avril 2015
3
Pour faire vraiment optimisé, il faudrait voir si $annee%4 === 0 renvoit plus souvent FALSE que $annee%400 !== 0.

Car si c'est $annee%400 !== 0 qui fait plus souvent FALSE, il faut la placer en première dans l'instruction. Un FALSE dans un ET renvoit toujours FALSE et les instructions qui suivent ne sont pas exécuté du tout.

D'où un petit gain en performance :p
(jme change en Antho ^^)
Messages postés
2350
Date d'inscription
mercredi 13 octobre 2004
Statut
Membre
Dernière intervention
18 avril 2015
3
rho oui en plus :p
Quel boulet ^^

Pour faire vraiment épuré, ca donnerait un truc dans le genre :

function EstBissextile($annee) {
return ( (int) $annee%4 === 0 && $annee%400 !== 0 );
}

7 lignes en 1 seule :)
C'est beau la prog par moment ^^
Messages postés
1293
Date d'inscription
mardi 9 novembre 2004
Statut
Membre
Dernière intervention
21 mai 2015

function EstBissextile($annee) {
return ( $annee%4 == 0 && $annee%400 != 0 ) ? TRUE : FALSE;
}


Rooooooo... FhX voyons... .. .

function EstBissextile($annee)
{
return (($annee%4) === 0 && ($annee%400) !== 0);
}

@ tchaOo°

ps : perso je rajouretais un cast au début de la fonction... .. .
Afficher les 9 commentaires