Esta función es la que uso yo, la cree yo, y es valida para fechas en formato timestamp, pero con que se modifique las 4 primeras lineas se podria hacer para formato numerico en fecha normal...
Código PHP:
function edad($stamp){
$c = date("Y",$stamp);
$b = date("m",$stamp);
$a = date("d",$stamp);
$anos = date("Y")-$c;
if(date("m")-$b > 0){
}elseif(date("m")-$b == 0){
if(date("d")-$a <= 0){
$anos = $anos-1;
}
}else{
$anos = $anos-1;
}
return $anos;
}