---
title: "Ålder"
type: "forum-thread"
url: "https://www.webforum.nu/amne/php/16199-ålder"
topic: "PHP"
topic_url: "https://www.webforum.nu/amne/php"
author: "vicktor"
published: "2001-10-14T12:32:00.000Z"
updated: "2001-10-16T13:47:00.000Z"
replies: 9
views: 283
page: 1
pages: 1
language: "sv-SE"
site: "webForum — webforum.nu"
rights: "Upphovsrätten till varje inlägg tillhör dess författare."
attribution: "Citera som: webForum, https://www.webforum.nu/amne/php/16199-ålder"
---

# Ålder

## #1 — vicktor, 2001-10-14T12:32Z

Hej finns det något script som man kan använda sig utav för att datorn ska räkna ut hur många år en persson är som är född tex:
1980-09-24 jag har 3 olika fält i min databas jag använder mig utav en MySql databas.

Permalänk: https://www.webforum.nu/p/16199

## #2 — cerebus, 2001-10-14T19:21Z

Lättaste sättet är nog att göra om datumet med mktime(); (mer information i kommentarerna på <http://www.php.net/mktime>  ) och sedan göra likadant med dagens datumen. Sedan ta skillnaden mellan de båda och kovertera till lämpligt format.

Permalänk: https://www.webforum.nu/p/324395

## #3 — vicktor, 2001-10-14T19:36Z

Finns det ingen enklare sätt för det finns det i asp.

Permalänk: https://www.webforum.nu/p/324396

## #4 — SuPeR_ToBBe, 2001-10-14T19:41Z

ehh...det är väl ganska lätt:

```
$usr_birth = "10/10/2001";
$datum = "10/11/2001";
$usr_birth = mktime($usr_birth);
$datum = mktime($datum);
$skillnad = $datum - $usr_birth;
$age = $skillnad / 31536000;
$age = $explode($age);
$age = $age[0];
echo "Du är $age år...";
```

det borde funka... 

\[r\]totalfel...fixar det\[/r\]

Permalänk: https://www.webforum.nu/p/324397

## #5 — vicktor, 2001-10-14T19:52Z

Nej det fungerar inte!

Permalänk: https://www.webforum.nu/p/324398

## #6 — loriel, 2001-10-14T23:12Z

Fler grammatiska fel än mina skolböcker från första klass. Men det fungerar. Fullt med skräp är det också.

```
<?php
if ($birth)
 {
  $birth = explode("-", $birth);
  $today = explode("-",date("Y-m-d", time()));
  if ($birth[1] < 1 &#0124;&#0124; $birth[2] < 1 &#0124;&#0124; $birth[2] > 31)
   {
    printf("vad är ditt problem?..");
    exit();
   }
  $age = $today[0] - $birth[0];
  if ($today[1] - $birth[1] < 0 &#0124;&#0124; ($today[1] - $birth[1] == 0 && $today[2] - $birth[2] < 0))
   {
    $age--;
   }
  $month = $today[1] - $birth[1];
  if ($age < 0)
   {
    printf("du är inte född än ditt jävla herkslan...");
    exit();
   }
  if ($month < 0)
   {
    $month = 12 + $month;
   }
  $date = $today[2] - $birth[2];
  if ($date < 0)
   {
    $date = 31 + $date;
   }
  printf("$age\n<BR>\n$month\n<BR>\n$date");
 }
else
 {
  printf("yeah...");
 }
?>
```

Permalänk: https://www.webforum.nu/p/324399

## #7 — vicktor, 2001-10-15T07:46Z

Jag får det inte att fungera jag skrev in den så här:
\<?php
if ($birth)
{
$birth = explode("2001-10-24", $birth);
$today = explode("2001-10-15",date("Y-m-d", time()));
if ($birth\[1\] \< 1 &#0124;&#0124; $birth\[2\] \< 1 &#0124;&#0124; $birth\[2\] \> 31)
{
printf("vad är ditt problem?..");
exit();
}
$age = $today\[0\] - $birth\[0\];
if ($today\[1\] - $birth\[1\] \< 0 &#0124;&#0124; ($today\[1\] - $birth\[1\] == 0 && $today\[2\] - $birth\[2\] \< 0))
{
$age--;
}
$month = $today\[1\] - $birth\[1\];
if ($age \< 0)
{
printf("du är inte född än ditt jävla herkslan...");
exit();
}
if ($month \< 0)
{
$month = 12 + $month;
}
$date = $today\[2\] - $birth\[2\];
if ($date \< 0)
{
$date = 31 + $date;
}
printf("$age\\n\<BR\>\\n$month\\n\<BR\>\\n$date");
}
else
{
printf("yeah...");
}
?\>

Vad är felet?

Permalänk: https://www.webforum.nu/p/324400

## #8 — Gislaved.net, 2001-10-15T10:47Z

Jag använder mig av följande kodsnutt.

```
<?
$fodelsedatum = "1981-03-15";
list($Y,$M,$D)=split("-",date("Y-m-d", strtotime("now")));
list($y,$m,$d)=split("-",date("Y-m-d", strtotime("$fodelsedatum")));

$alder=(($M<$m)&#0124;&#0124;(($M==$m)&&($D<=$d)))?($Y-$y-1):($Y-$y);
echo $alder;
?>
```

Permalänk: https://www.webforum.nu/p/324401

## #9 — vicktor, 2001-10-15T11:45Z

Det här fungerar perfekt men det blir ett litet problem när jag hämtar år, månad och datum från databasen för jag får -1 som resultat!

Permalänk: https://www.webforum.nu/p/324402

## #10 — SuPeR_ToBBe, 2001-10-16T13:47Z

Testa med en ändrade koden i mitt förra inlägg ...

Permalänk: https://www.webforum.nu/p/324403

---

Tråden på webben: https://www.webforum.nu/amne/php/16199-ålder
