Vascosoft

Calcular edad con PHP

<?php
    // Para este ejemplo vamos a usar la función mktime()
    
    //almacenamos en una variable la marca de tiempo actual
    $fecha_actual = mktime(); 
    
    /* vamos a usar una fecha arbitraria como ejemplo, 10/09/1978 */  
    $dia = 10;
    $mes = 9;
    $anio = 1978;
    
    /* con los datos anteriores generamos la marca de
    tiempo correspondiente a la fecha de nacimiento.
    Los ceros representan hora, minutos y segundos */
    $fecha_de_nacimiento = mktime(0, 0, 0, $mes, $dia, $anio);
    
    /* Calculamos la edad restando a la fecha actual la fecha de nacimiento.
    Hay que tener en cuenta de que el resultado está en segundos;
    hay que pasarlo a años */
    $edad_segundos = $fecha_actual - $fecha_de_nacimiento;
    
    /* un año tiene, teniendo en cuenta años bisiestos, 31.557.600 segundos,
    así que dividimos el resultado que obtuvimos por esa cantidad */    
    $edad_años = (int) ($edad_segundos / 31557600);
    //con (int) logramos que el resultado sea un número entero
    
    //Ahora simplemente mostramos el resultado:
    echo "Fecha de nacimeinto: 10/09/1978";
    echo "Edad: ".$edad_años;
?>