Mira este código... tiene una buena y otra mala...
Código PHP:
Ver originalfunction ticket($pin)
{
$istore2 = 0;
$istore3 = 1313;
for ($w = 0; $w < $bucle ; $w++) {
$istore5 = (int
) ord($pin[$w]); $istore2 = bcmul( (int
) $istore2, (int
) $istore3); $istore21 = bcmul(bcmul(bcmul( bcmul((int
) $istore5, (int
) $istore5), (int
) $istore5), 667), (int
) $w); $istore2 = bcadd( (int
)$istore2, (int
) $istore21); }
$istore2 = bcmod( ((int
)$istore2 & 2147483647), 65536);
for ($istore5 = 4; $istore5 >= 0; $istore5-- ) {
$astore4[$istore5] = bcadd( bcmod((int
)$istore2, 10), 48); $istore2 = bcdiv((int
)$istore2, 10); }
$key=0;
for ($i=1; $i<count($astore4); $i++){ }
return $key;
}
print 'Tichet: ' . ticket("216B22DD") . '<br />';
echo PHP_INT_SIZE . '<br/>';
echo PHP_INT_MAX;
La buena: Da igual en servidores de 64 bits o 32 bits...
La mala: es que no da el valor que tu esperas, no se si erre algún calculo o que, pero capaz te sirva para encaminar el tema..
Saludos
P.D.: en la anterior me da diferente, es que los numero enseguida empiezan a separarse bastante...