"Frank N" <spam@drunk.dk> skrev i
dk.edb.internet.webdesign.serverside.php:
>Fødselsdatoen er f.eks. $born = "200876" (dvs. 20. august 1976).
>Hvis jeg benytter følgende, kan jeg lave datoen om til unixtime:
Så kan du vel kun bruge funktionen på personer født efter 1970
(ihvertfald på Windows-maskiner).
> $dd = substr($born, 0, 2);
> $mm = substr($born, 2, 2);
> $yy = substr($born, 4, 2);
Du kan jo nøjes blot med kigge på året:
$yy = 1900 + substr($born, 4, 2);
(dit datosystem lider fundamentalt af den svaghed, at du ikke kan
bruge det på personer født efter 2000 og før 1900, men det kan du ret
simpelt ændre.)
Herefter regner du antal år ud således:
$aar = date("Y")-$yy;
men ovenstående gælder kun, på selve fødselsdagen, derfor skal du lave
denne tilføjelse:
if (mktime(0,0,0,$mm,$yy,date("Y"))>time()) {
$arr--;
}
der trækker én fra året, dersom personens fødselsdag i år ikke er
passeret.
Der er et par andre eksempler på aldersberegning i de bruger-leverede
eksempler på
http://www.php.net/manual/en/ref.datetime.php
--
Jens Tønnesen -
http://www.pressefoto.dk