Ver Mensaje Individual
  #4 (permalink)  
Antiguo 21/02/2014, 14:58
ocp001a
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 16 años
Puntos: 528
Respuesta: Funcion strlen

¿es un tipo de dígito verificador?

Creo que se puede resolver con algo así:

Código PHP:
Ver original
  1. $entrada='3457';//entrada de ejemplo
  2. $entrada=str_split(strrev($entrada));//"volteamos" y partimos la entrada
  3. $suma=0;
  4. foreach($entrada as $pos =>$car){
  5.     $mul=($pos%2)?$car:$car*3;//si es el primer caracter multiplicamos por 3 si no, no
  6.     if($mul>9){//si el resultado es mayor a 9 (10 o más)
  7.         $mul=str_split($mul);//dividimos la cadena
  8.         $mul=$mul[0]+$mul[1];
  9.     }
  10.     $suma+=$mul;//acumulamos la suma
  11. }
  12. $decena=ceil($suma/10)*10;//buscamos la decena más próxima
  13. $suma=$decena-$suma;//restamos
  14.  
  15. echo 'Numero buscado: '.$suma;