private static $base64charsLength = 64;
public static function intToNum($int, $length) {
- //fix a small "bug": normaly 0 = AAAAA but we need 1 = AAAAA
- $int = $int - 1;
-
$numeric = "";
for($pos = $length-1; $pos >= 0; $pos--) {
//current position represents floor($int / ($base64charsLength ^ $pos))
$base = $base * self::$base64charsLength;
}
$posValue = floor($int / $base);
+ $int -= $posValue * $base;
//get the char representing $posValue
$posChar = self::$base64chars[$posValue];
$numeric .= $posChar;
$int = ($posValue * $base);
$base = $base * self::$base64charsLength;
}
-
- //fix a small "bug": normaly 0 = AAAAA but we need 1 = AAAAA
- $int = $int + 1;
-
return $int;
}