<?php 
function edadFmysql($fecha_nac)
{
//Esta funcion toma una fecha de nacimiento 
//desde una base de datos mysql
//en formato aaaa/mm/dd y calcula la edad en números enteros
/************************************************************************/

	$dia=date("j");
	$mes=date("m");
	$anno=date("Y");

	//descomponer fecha de nacimiento
	$dia_nac=substr($fecha_nac, 8, 2);
	$mes_nac=substr($fecha_nac, 5, 2);
	$anno_nac=substr($fecha_nac, 0, 4);

	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;
}

function edadFnormal($fecha_nac)
{
//Esta funcion toma una fecha de nacimiento 
//desde una fecha normal peruana
//en formato dd/mm/aaaa y calcula la edad en números enteros
/************************************************************************/

	$dia=date("j");
	$mes=date("m");
	$anno=date("Y");

	//descomponer fecha de nacimiento
	$dia_nac=substr($fecha_nac, 0, 2);
	$mes_nac=substr($fecha_nac, 3, 2);
	$anno_nac=substr($fecha_nac, 6, 4);

	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;
}
//                        Fecha  Hoy()
//*******************************************************************

function fechahoy(){ 
	$dias = array("Monday"    => "Lunes"     ,"Lunes"     => "Monday", 
				  "Tuesday"   => "Martes"    ,"Martes"    => "Tuesday", 
				  "Wednesday" => "Miercoles" ,"Miercoles" => "Wednesday", 
				  "Thursday"  => "Jueves"    ,"Jueves"    => "Thursday", 
				  "Friday"    => "Viernes"   ,"Viernes"   => "Friday", 
				  "Saturday"  => "Sabado"    ,"Sabado"    => "Saturday", 
				  "Sunday"    => "Domingo"   ,"Domingo"   => "Sunday" ); 

	$mes = array("January"   =>"Enero"      ,"Enero"      => "January", 
				 "February"  =>"Febrero"    ,"Febrero"    => "February", 
				 "March"     =>"Marzo"      ,"Marzo"      => "March", 
				 "April"     =>"Abril"      ,"Abril"      => "April", 
				 "May"       =>"Mayo"       ,"Mayo"       => "May", 
				 "June"      =>"Junio"      ,"Junio"      => "June", 
				 "July"      =>"Julio"      ,"Julio"      => "July", 
				 "August"    =>"Agosto"     ,"Agosto"     => "August", 
				 "September" =>"Septiembre" ,"Septiembre" => "September", 
				 "October"   =>"Octubre"    ,"Octubre"    => "October", 
				 "November"  =>"Noviembre"  ,"Noviembre"  => "November", 
				 "December"  =>"Diciembre"  ,"Diciembre"  => "December"); 
	$fecha = $dias[date("l")] . ", " .date("d"). " de ". $mes[date("F")]. " del ".date("Y"); 
	return $fecha; 
}

//Invertir  Fecha en formato dd-mm-aaaa ó aaaa-mm-dd con "-"
//*****************************************************************

function invfecha($fecha)
{
	 $f = explode("-",$fecha);
	 return $f[2] . "-" . $f[1] . "-" . $f[0]; 
}

///construye la estructura de seleccion de los meses 
//********************************************************************
function obtieneMes($nmes)
{
   switch ($nmes) {
  		case "01" : $mes = "Enero"; break;
  		case "02" : $mes = "Febrero"; break;
  		case "03" : $mes = "Marzo"; break;
  	 	case "04" : $mes = "Abril"; break;
  		case "05" : $mes = "Mayo"; break;
  		case "06" : $mes = "Junio"; break;
  		case "07" : $mes = "Julio"; break;
  		case "08" : $mes = "Agosto"; break;
  		case "09" : $mes = "Septiembre"; break;
  		case "10" : $mes = "Octubre"; break;
  		case "11" : $mes = "Noviembre"; break;
  		case "12" : $mes = "Diciembre"; break;
   }

   return $mes;
}
//******************************************************************
function LeeMes($var_mes,$val_mes,$disabled=0,$font="")
{
   $disabled = ($disabled) ? "disabled" : "";
	 
   echo "<select name=\"$var_mes\" size=\"1\" $disabled>";
   echo "<option value=\"\">--</option>";
   for ($i=1; $i <= 12; $i++)
   {
   	  if ($i < 10) $imes = "0".$i;
  		else $imes = $i;
  		
      	$mes = obtieneMes($imes);				
  		
  		$selected = "";
  	  if ($imes == $val_mes or $i == $val_mes) 
         $selected = "selected";
  		
  		echo "<option $selected value=\"$imes\">$mes</option>";
   }
   echo "</select>";
}
///construye la estructura de seleccion de los Años 
//********************************************************************
function LeeAno($var_ano,$val_ano,$disabled=0,$font="",$anoi=0,$anof=0)
{
     $disabled = ($disabled) ? "disabled" : "";
		 $anoi = ($anoi) ? $anoi : 1978;
		 $anof = ($anof) ? $anof : 2004;
		 
		 echo "<select name=\"$var_ano\" size=\"1\" $disabled>";
		 echo "<option value=\"\">----</option>";
		 for ($i=$anoi; $i <= $anof; $i++)
		 {
		    $selected = "";
			  if ($i == $val_ano) 
			        $selected = "selected";
		 
				echo "<option $selected value=\"$i\">$i</option>";
		 }
				
		 echo "</select>";
}		

/// permite añadir unos dia mas a la fecha introdcida en formato aaaa-mm-dd
//******************************************************************************
function add_dia($fecha,$n)
{
   list ($ano,$mes,$dia) = explode ("-",$fecha);

	 for ($i = 0; $i < $n; $i++)
	 {
  			 $dia = $dia + 1;
  			 if ($dia > 28)
  			 {
  			    $check = checkdate($mes,$dia,$ano);
  					if (!$check)
  					{
      					$dia = 1;
      					$mes++;
      					$check = checkdate($mes,$dia,$ano);
  							if (!$check)
  					    {
  							   $mes = 1;
  								 $ano++; 
  							}
  					}
  			 }
	 }
	 
	 $mes = (strlen($mes) == 1) ? "0".$mes : $mes;
	 $dia = (strlen($dia) == 1) ? "0".$dia : $dia;
	 
	 return "$ano-$mes-$dia";
}

/// construye la estructura completa de la fecha según días, mes y año 
function LeeFecha($var_dia,$var_mes,$var_ano,$val_dia,$val_mes,$val_ano,$disabled=0,$font="",$anoi=0,$anof=0)
{
     $disabled = ($disabled) ? "disabled" : "";
 		 $vacio = "00";
		 	
		 echo "<select name=\"$var_dia\" size=\"1\" $disabled $font>";
		 echo "<option value=\"$vacio\">--</option>";
		 for ($i=1; $i <= 31; $i++)
		 {
		 	  if ($i < 10) $dia = "0".$i;
				else $dia = $i;
				
				$selected = "";
			  if ($dia == $val_dia) 
			        $selected = "selected";
					 
				echo "<option $selected value=\"$dia\">$dia</option>";
		 }
		 echo "</select>/";
		 
		 LeeMes($var_mes,$val_mes,$disabled,$font);
		 echo "/";
    
		 LeeAno($var_ano,$val_ano,$disabled,$font,$anoi,$anof);
	   return;
}
?>