checa esta funcion
Código PHP:
//formato de fecha dd/mm/aaaa
function vacaciones($fecha_ingreso, $fecha_actual)
{
$fecha1=explode("/",$fecha_ingreso);
$fecha2=explode("/",$fecha_actual);
$vacaciones=0;
if($fecha2[2] > $fecha1[2])
{
$anios=$fecha2[2]-$fecha1[2];
if(number_format($fecha2[1]) >= number_format($fecha1[1]))
{
if(number_format($fecha2[0]) >= number_format($fecha1[0]))
{
$vacaciones=calc_vac($anios);
return $vacaciones;
}
else
{
$anios=$anios-1;
if($anios>=1)
{
$vacaciones=calc_vac($anios);
return $vacaciones;
}
else
{
return $vacaciones;
}
}
}
else
{
$anios=$anios-1;
if($anios>=1)
{
$vacaciones=calc_vac($anios);
return $vacaciones;
}
else
{
return $vacaciones;
}
}
}
else
{
return $vacaciones;
}
}
function calc_vac($anios)
{
if($anios<6)
{
$vacaciones=(($anios-1)*2)+6;
return $vacaciones;
}
if($anios>5 and $anios<10)
{
$vacaciones=14;
return $vacaciones;
}
if($anios>9)
{
$vacaciones=($anios-9)+14;
return $vacaciones;
}
}
echo vacaciones("20/01/1986", date("d/m/Y"));