Estas en: HOME
Ingrese palabra

 

25/08/2018 | A partir del DNI y sexo en Argentina

Función para obtener el CUIL/CUIT

Función para obtener el CUIL/CUIT
Función PHP que para obtener el CUIL/CUIT a partir de pasarles como parámetros el DNI y el sexo.

Está función es una recopilación de varios ejemplos que fui buscando en la web. Algunas eran para comprobar si el CUIT era válido, otras para construirlo a partir del número de documento y el sexo. Ninguna de las que revisé tenía puntualmente el trabajo resuelto, por lo que fui adaptándola a mis necesidades.

 

En principio hay que saber como se calcula el CUIT en Argentina al menos, y aquí está muy bien explicado https://virushardrive.wordpress.com/2010/04/04/algoritmo-de-cuil-cuit/

 

Explicación

 

$cuit = obtenerCuit($dni,$sexo,$guion)

Donde $dni es un entero (sin puntos), $sexo es un char (M o F) y $guion es un booleano

 

La función

 

function obtenerCuit($dni,$sexo,$guion){
 
$array_xy = array('F' => 27, 'M' => 20, 'E' => 30);
$xy = $array_xy[$sexo];
 
$multiplicadores = array('3','2','7','6','5','4','3','2'); 
$calculo = (substr($xy,0,1)*5)+(substr($xy,1,1)*4); 
 
for($i=0;$i<8;$i++) { 
     $calculo += substr($dni,$i,1) * $multiplicadores[$i]; 
 
$division = intval($calculo/11); 
$resto = $calculo-($division*11);
 
 
if(($sexo != 'E') and ($resto<=1)){ 
     if($resto==0){ 
           $z = '0'; 
      }else{ 
           if($sexo=='M'){ 
                 $z = '9'; 
           }else{ 
                 $z = '4'; 
           } 
      } 
 
     $xy = '23'; 
    }else{ 
        $z = 11-$resto; 
 
if($guion == false){
      $cuit = $xy.$dni.$z;
}else{
      $cuit = $xy.'-'.$dni.'-'.$z;
}
 
return $cuit;
 
}
if(($sexo != 'E') and ($resto<=1)){ 
      if($resto==0){ 
             $C = '0'; 
      }else{ 
             if($sexo=='M'){ 
                  $C = '9'; 
             }else{ 
                  $C = '4'; 
             } 
       } 
 
         $Primero = '23'; 
}else{ 
        $C = 11-$resto; 
 
if($guion == false){
       $cuit = $Primero.$dni.$C;
}else{
       $cuit = $Primero.'-'.$dni.'-'.$C;
}
 
return $cuit;
 
}

 

 

 

Tags: Algoritmo CUIL, Algoritmo CUIT
Volver

Impreso: Jueves, 20 de Septiembre de 2018 - 03:30
25/08/2018 | A partir del DNI y sexo en Argentina
Función para obtener el CUIL/CUIT
Función PHP que para obtener el CUIL/CUIT a partir de pasarles como parámetros el DNI y el sexo.

Está función es una recopilación de varios ejemplos que fui buscando en la web. Algunas eran para comprobar si el CUIT era válido, otras para construirlo a partir del número de documento y el sexo. Ninguna de las que revisé tenía puntualmente el trabajo resuelto, por lo que fui adaptándola a mis necesidades.

 

En principio hay que saber como se calcula el CUIT en Argentina al menos, y aquí está muy bien explicado https://virushardrive.wordpress.com/2010/04/04/algoritmo-de-cuil-cuit/

 

Explicación

 

$cuit = obtenerCuit($dni,$sexo,$guion)

Donde $dni es un entero (sin puntos), $sexo es un char (M o F) y $guion es un booleano

 

La función

 

function obtenerCuit($dni,$sexo,$guion){   $array_xy = array('F' => 27, 'M' => 20, 'E' => 30); $xy = $array_xy[$sexo];   $multiplicadores = array('3','2','7','6','5','4','3','2');  $calculo = (substr($xy,0,1)*5)+(substr($xy,1,1)*4);    for($i=0;$i<8;$i++) {       $calculo += substr($dni,$i,1) * $multiplicadores[$i];  }    $division = intval($calculo/11);  $resto = $calculo-($division*11);     if(($sexo != 'E') and ($resto<=1)){       if($resto==0){             $z = '0';        }else{             if($sexo=='M'){                   $z = '9';             }else{                   $z = '4';             }        }         $xy = '23';      }else{          $z = 11-$resto;  }    if($guion == false){       $cuit = $xy.$dni.$z; }else{       $cuit = $xy.'-'.$dni.'-'.$z; }   return $cuit;   } if(($sexo != 'E') and ($resto<=1)){        if($resto==0){               $C = '0';        }else{               if($sexo=='M'){                    $C = '9';               }else{                    $C = '4';               }         }             $Primero = '23';  }else{          $C = 11-$resto;  }    if($guion == false){        $cuit = $Primero.$dni.$C; }else{        $cuit = $Primero.'-'.$dni.'-'.$C; }   return $cuit;   }

 

 

 


orundes.com.ar
- Paraná - Entre Ríos. CP: 3100 | TEL: 0343-156111144
orundes@msn.com | orundes.com.ar
×

Paraná - Entre Ríos, 3100

orundes@msn.com