Obtener edad PHP con fecha de nacimiento
Obtener edad PHP con fecha de nacimiento. Este lenguaje es muy usado en el mundo de servidores web y por ende podemos obtener edades de una fecha dada, por ejemplo, una fecha de nacimiento, sin embargo, tenemos que crear una pequeña función para aprovechar al máximo este estupendo script. Y lo vamos a hacer en dos ejemplos concisos a partir de una fecha de nacimiento, la fecha actual y mostrarla en pantalla.
Podemos introducir la fecha de nacimiento en una variable directamente al script o bien con un formulario HTML. También se debe controlar que la fecha sea coherente y correcta. Recordar que se puede utilizar la función date() así como substr() o también explode(). Para la validación de la fecha os puede ayudar también la función checkdate().
Obtener edad PHP con fecha de nacimiento.
Ejemplo 01
<?php function mi_edad($fecha_nac){ // $dia=date("j"); $mes=date("n"); $anno=date("Y"); //descomponer fecha de nacimiento $anno_nac=substr($fecha_nac, 0, 4); $mes_nac=substr($fecha_nac, 5, 2); $dia_nac=substr($fecha_nac, 8, 2); // if($mes_nac>$mes){ $calc_edad= $anno-$anno_nac-1; }else{ if($mes==$mes_nac AND $dia_nac>$dia){ $calc_edad= $anno-$anno_nac-1; }else{ $calc_edad= $anno-$anno_nac; } } return $calc_edad; } ?>
Mostrando el resultado de la edad.
print "Actualmente tengo ".mi_edad("1980-02-10")." años";
Ejemplo 02
A continuación una función php para calcular la edad a partir de la fecha de nacimiento.
function mostrar_edad($fecha){ $dias = explode("-", $fecha, 3); $dias = mktime(0,0,0,$dias[1],$dias[0],$dias[2]); $edad = (int)((time()-$dias)/31556926 ); return $edad; } // Formato: dd-mm-yy echo mostrar_edad("01-01-2000"); // Resultado: 17[download id=»2508″]
Hola buenas tardes me gustaría que me ayudes, tengo ingresados los datos de los usuarios en la db y quiero que una ves me muestre los datos consultados me calcule la edad este código me muestra pero si cambio el año de nacimiento en php y no cuando lo toma de la db.
function mostrar_edad($fecha){
$dias = explode(«-«, $fecha, 3);
$dias = mktime(0,0,0,$dias[1],$dias[0],$dias[2]);
$edad = (int)((time()-$dias)/31556926 );
return $edad;
}
// Formato: dd-mm-yy
echo mostrar_edad(«AQUI TIENE Q PONER AUTOMATICO LA FECHA DE NACIMEINTO DE LA DB»); // Resultado: 17
Espero que el código les sirva, Gracias..