Anniversaires

Mammouth du PHP | 1511 Messages

02 déc. 2006, 13:50

A l'aide de DATE_FORMAT j'ai juste eu a modifier le format de ma date d'anniversaire (AAAA-MM-JJ) et j'ai utilisé le script de Shrell, que je remercie au passage.
Et a l'aide de UNIX_TIMESTAMP, j'ai converti cette date en timestamp, ce qui m'a permi de calculer l'age a l'aide de
floor((date("Ymd")-date("Ymd",$client_birthdate))/10000)
@++

Administrateur PHPfrance
Administrateur PHPfrance | 3088 Messages

02 déc. 2006, 15:05

Je ne comprends pas, quel est l'intérêt de cette méthode par rapport, par exemple, au stockage du jour anniversaire dans un CHAR(4) ?

De plus, le code PHP ne me semble pas correct puisque tu divises une date par 10 000 (?). À priori, il vaudrait mieux utiliser les maths sur des nombres, pas sur des dates, donc convertir la date de naissance en timestamp, eg
$age = round((time() - strtotime($client_birthdate)) / 31536000);
(ça reste approximatif, je n'ai pas réfléchi aux années bissextiles mais ça devrait aller)