Ver Mensaje Individual
  #2 (permalink)  
Antiguo 27/08/2008, 14:19
Avatar de Ronruby
Ronruby
 
Fecha de Ingreso: julio-2008
Ubicación: 18°30'N, 69°59'W
Mensajes: 4.879
Antigüedad: 15 años, 9 meses
Puntos: 416
Respuesta: obtener edad de esta forma???

Aqui te dejo una funcion que cree hace unos dias:

Código PHP:
function edad($fecha) {
    
$tiempo strtotime($fecha);
    
$ahora time();
    
$edad = ($ahora-$tiempo)/(60*60*24*365);
    
$edad floor($edad);
    return 
$edad;

Esa funcion toma una fecha dada. En tu caso seria la que vas a insertar en la base de datos en formato YYYY-MM-DD
Busca el UNIX TIMESTAMP de dicha fecha (Que son el numero de segundos desde el 1ero de Enero de 1970 hasta la fecha en el campo)
Luego defino una variable llamada $ahora que es el UNIX Timestamp desde el 1ero de Enero hasta el dia de HOY.
Busco la resta de $ahora menos $tiempo ... y lo divido entre 60*60*24*365 osea desde segundos hasta 1 año.
Y luego hago un floor a la fecha. Floor siempre redondea hacia abajo. como sabras no podemos redondear la fecha hasta arriba.

:P Creo que eso es todo.
Puedes usarla de la siguiente manera:
echo edad("2000-1-1");
Lo cual te devolveria 8 :)

Última edición por Ronruby; 27/08/2008 a las 14:25