'Q','R','S','T','U','V','W','X','Y','Z','a','b','c','d','e','f',
'g','h','i','j','k','l','m','n','o','p','q','r','s','t','u','v',
'w','x','y','z','0','1','2','3','4','5','6','7','8','9','[',']'
- );
- private static $base64charsLength = 64;
+ );
+ private static $base64charsLength = 64;
- public static function intToNum($int, $length) {
- $numeric = "";
- for($pos = $length-1; $pos >= 0; $pos--) {
- //current position represents floor($int / ($base64charsLength ^ $pos))
- $base = 1;
- for($i = 0; $i < $pos; $i++) {
- $base = $base * self::$base64charsLength;
- }
- $posValue = floor($int / $base);
- $int -= $posValue * $base;
- //get the char representing $posValue
- $posChar = self::$base64chars[$posValue];
- $numeric .= $posChar;
- }
+ public static function intToNum($int, $length) {
+ $numeric = "";
+ for($pos = $length-1; $pos >= 0; $pos--) {
+ //current position represents floor($int / ($base64charsLength ^ $pos))
+ $base = 1;
+ for($i = 0; $i < $pos; $i++) {
+ $base = $base * self::$base64charsLength;
+ }
+ $posValue = floor($int / $base);
+ $int -= $posValue * $base;
+ //get the char representing $posValue
+ $posChar = self::$base64chars[$posValue];
+ $numeric .= $posChar;
+ }
+ return $numeric;
+ }
- return $numeric;
- }
-
- public static function numToInt($numeric) {
- $base = 1;
- $int = 0;
- for($pos = strlen($numeric)-1; $pos >= 0; $pos--) {
- $posValue = array_search($numeric[$pos], self::$base64chars);
- $int = ($posValue * $base);
- $base = $base * self::$base64charsLength;
- }
- return $int;
- }
+ public static function numToInt($numeric) {
+ $base = 1;
+ $int = 0;
+ for($pos = strlen($numeric)-1; $pos >= 0; $pos--) {
+ $posValue = array_search($numeric[$pos], self::$base64chars);
+ $int += ($posValue * $base);
+ $base = $base * self::$base64charsLength;
+ }
+ return $int;
+ }
}