Just nu i M3-nätverket
Gå till innehåll

Beräkna ålder


TicoRoman

Rekommendera Poster

Hur tusan ska jag beräkna åldern för en viss person, utifrån dennes födelsedatum?

 

Först tänkte jag omvandla datumen till antal sekunder (strtotime()), men sedan kom jag på att det inte gick. (går ju inte att räkna med datum före år 1970).

 

Att ta date("2003-02-06") - date("1982-05-30") är ingen höjdare det heller. Den spottar bara fram skillnaden mellan åren, och jag blir 21.

 

Nåja, något enkelt sätt finns det nog. Jag väntar på tips från er. ;)

 

 

_________

TicoRoman - The One And Only

 

Länk till kommentar
Dela på andra webbplatser

Borde inte något sådant här fungera (kan nog optimeras lite)?

$födelsedag = "1982-05-30";
preg_match("/[0-9]{4}\-[0-9]{1,2}\-[0-9]{1,2}/", $födelsedag, $födelsedag);
$nu = getdate();
$år = $nu["year"]-$födelsedag[1];
if ($födelsedag[2] > $nu["mon"] || ($födelsedag[2] == $nu["mon"] && $födelsedag[3] > $ny["mday"])) $år--;
echo $år;

 

Länk till kommentar
Dela på andra webbplatser

Nu verkar iofs inte preg_match fungera riktigt som den ska, men jag förstår hur du menar.

 

Visserligen fungerar det att jämföra så där, men det känns inte helt riktigt bra när man tänker på prestanda. Men om inte du känner till ett enklare sätt så finns det nog inte, så jag får köra på den här lösningen istället. :(

 

 

_________

TicoRoman - The One And Only

 

Länk till kommentar
Dela på andra webbplatser

Hmmm... Tja, nåt slarvfel är det väl där, men det löser du nog... :)

 

Jag tror inte det finns något enklare sätt, tyvärr... Det som är resurskrävande, och alltid det jobbigaste i programmering, är indatan från användaren. Man måste se till att den är rätt formaterad osv, vilket gör att det blir på detta sätt (preg-sättet).

Så är det hårda livet.... ;)

 

Länk till kommentar
Dela på andra webbplatser

Arkiverat

Det här ämnet är nu arkiverat och är stängt för ytterligare svar.

×
×
  • Skapa nytt...