Ver Mensaje Individual
  #1 (permalink)  
Antiguo 05/10/2014, 14:19
nandocalix23
 
Fecha de Ingreso: octubre-2014
Mensajes: 2
Antigüedad: 10 años, 1 mes
Puntos: 0
Mensaje Calcular Experiencia Laboral de una persona

Bueno Este codigo es para obtener los años meses y dias en los que una persona trabajo, por lo que se los comparto, realmente lo saque de este foro pero no recuerdo el nombre del usuario, solamente que el codigo de el era para calcular la edad, viene siendo parecido, bueno espero a mas de alguno le sirva
saludos desde Honduras!

Código PHP:
//**********************************************
        // TRAEMOS LOS DATOS DEL OBJETO Y LO METEMOS EN UN VARIABLE
        //**********************************************

                //los objetos txtfecha1, y txtfecha2 ustedes los defines ok :D
        
$fechaInicioexplode("/"$_POST["txtFecha1"]);
        
$fechaSalidaexplode("/"$_POST["txtFecha2"]);

        
//**********************************************
        // PASAMOS LOS DATOS A VARIABLES SEPARADAS Y 
        // Y TRATAMOS LA VARIABLE CONO UN ARREGLO
        //**********************************************

        //Restamos los dias , meses y años de la siguiente manera
        
$Dias=    $fechaSalida[0] - $fechaInicio[0];
        
$Meses$fechaSalida[1] - $fechaInicio[1];
        
$Anios$fechaSalida[2] - $fechaInicio[2];

        
//**********************************************
        // ACONTINUACION SE HACEN LAS VALIDACIONES
        //**********************************************

        //Hacemos un cliclo if con los dias, esto lo hacemos pensado en 
        //los dias,meses,años negativos que nos daran al hacer las restas
        
if ($Dias 0) {
            --
$Meses;

            switch (
$fechaSalida[1]) {
                case 
1$Dias_Mes_Anterior=31; break;
                case 
2$Dias_Mes_Anterior=31; break;
                case 
3
                if (
bisiesto($fechaSalida[3])) //bisiesto es una funcion que se encuentra al final del codigo
                
{
                    
$Dias_Mes_Anterior=29; break;    
                }
                else
                {

                    
$Dias_Mes_Anterior=28; break;
                }
                case 
4$Dias_Mes_Anterior=31; break;
                case 
5$Dias_Mes_Anterior=30; break;
                case 
6$Dias_Mes_Anterior=31; break;
                case 
7$Dias_Mes_Anterior=30; break;
                case 
8$Dias_Mes_Anterior=31; break;
                case 
9$Dias_Mes_Anterior=31; break;
                case 
10$Dias_Mes_Anterior=30; break;
                case 
11$Dias_Mes_Anterior=31; break;
                case 
12$Dias_Mes_Anterior=30; break;

                
            }

            
$Dias$Dias $Dias_Mes_Anterior;

        }

        if (
$Meses <0) {
            --
$Anios;
            
$Meses$Meses 12;
        }

        echo 
"$Anios años - $Meses meses y $Dias dias";

            function 
bisiesto($Anio_Salida){
    
$bisiesto=false;
    
//probamos si el mes de febrero del año actual tiene 29 días
      
if (checkdate(2,29,$Anio_Salida))
      {
        
$bisiesto=true;
    }
    return 
$bisiesto;