@@ -165,67 +165,67 @@ discard block |
||
| 165 | 165 | * @link https://gist.github.com/fwolf/7250392 |
| 166 | 166 | */ |
| 167 | 167 | protected $safeLengthMap = [ |
| 168 | - 2 => 46, // 2^46 = 70368744177664 |
|
| 169 | - 3 => 29, // 3^29 = 68630377364883 |
|
| 170 | - 4 => 23, // 4^23 = 70368744177664 |
|
| 171 | - 5 => 20, // 5^20 = 95367431640625 |
|
| 172 | - 6 => 17, // 6^17 = 16926659444736 |
|
| 173 | - 7 => 16, // 7^16 = 33232930569601 |
|
| 174 | - 8 => 15, // 8^15 = 35184372088832 |
|
| 175 | - 9 => 14, // 9^14 = 22876792454961 |
|
| 176 | - 10 => 13, // 10^13 = 10000000000000 |
|
| 177 | - 11 => 13, // 11^13 = 34522712143931 |
|
| 178 | - 12 => 12, // 12^12 = 8916100448256 |
|
| 179 | - 13 => 12, // 13^12 = 23298085122481 |
|
| 180 | - 14 => 12, // 14^12 = 56693912375296 |
|
| 181 | - 15 => 11, // 15^11 = 8649755859375 |
|
| 182 | - 16 => 11, // 16^11 = 17592186044416 |
|
| 183 | - 17 => 11, // 17^11 = 34271896307633, |
|
| 184 | - 18 => 11, // 18^11 = 64268410079232, |
|
| 185 | - 19 => 11, // 19^10 = 6131066257801, |
|
| 186 | - 20 => 10, // 20^10 = 10240000000000, |
|
| 187 | - 21 => 10, // 21^10 = 16679880978201, |
|
| 188 | - 22 => 10, // 22^10 = 26559922791424, |
|
| 189 | - 23 => 10, // 23^10 = 41426511213649, |
|
| 190 | - 24 => 10, // 24^10 = 63403380965376, |
|
| 191 | - 25 => 10, // 25^10 = 95367431640625, |
|
| 192 | - 26 => 9, // 26^9 = 5429503678976, |
|
| 193 | - 27 => 9, // 27^9 = 7625597484987, |
|
| 194 | - 28 => 9, // 28^9 = 10578455953408, |
|
| 195 | - 29 => 9, // 29^9 = 14507145975869, |
|
| 196 | - 30 => 9, // 30^9 = 19683000000000, |
|
| 197 | - 31 => 9, // 31^9 = 26439622160671, |
|
| 198 | - 32 => 9, // 32^9 = 35184372088832, |
|
| 199 | - 33 => 9, // 33^9 = 46411484401953, |
|
| 200 | - 34 => 9, // 34^9 = 60716992766464, |
|
| 201 | - 35 => 9, // 35^9 = 78815638671875, |
|
| 202 | - 36 => 8, // 36^8 = 2821109907456, |
|
| 203 | - 37 => 8, // 37^8 = 3512479453921, |
|
| 204 | - 38 => 8, // 38^8 = 4347792138496, |
|
| 205 | - 39 => 8, // 39^8 = 5352009260481, |
|
| 206 | - 40 => 8, // 40^8 = 6553600000000, |
|
| 207 | - 41 => 8, // 41^8 = 7984925229121, |
|
| 208 | - 42 => 8, // 42^8 = 9682651996416, |
|
| 209 | - 43 => 8, // 43^8 = 11688200277601, |
|
| 210 | - 44 => 8, // 44^8 = 14048223625216, |
|
| 211 | - 45 => 8, // 45^8 = 16815125390625, |
|
| 212 | - 46 => 8, // 46^8 = 20047612231936, |
|
| 213 | - 47 => 8, // 47^8 = 23811286661761, |
|
| 214 | - 48 => 8, // 48^8 = 28179280429056, |
|
| 215 | - 49 => 8, // 49^8 = 33232930569601, |
|
| 216 | - 50 => 8, // 50^8 = 39062500000000, |
|
| 217 | - 51 => 8, // 51^8 = 45767944570401, |
|
| 218 | - 52 => 8, // 52^8 = 53459728531456, |
|
| 219 | - 53 => 8, // 53^8 = 62259690411361, |
|
| 220 | - 54 => 8, // 54^8 = 72301961339136, |
|
| 221 | - 55 => 8, // 55^8 = 83733937890625, |
|
| 222 | - 56 => 8, // 56^8 = 96717311574016, |
|
| 223 | - 57 => 7, // 57^7 = 1954897493193, |
|
| 224 | - 58 => 7, // 58^7 = 2207984167552, |
|
| 225 | - 59 => 7, // 59^7 = 2488651484819, |
|
| 226 | - 60 => 7, // 60^7 = 2799360000000, |
|
| 227 | - 61 => 7, // 61^7 = 3142742836021, |
|
| 228 | - 62 => 7, // 62^7 = 3521614606208, |
|
| 168 | + 2 => 46, // 2^46 = 70368744177664 |
|
| 169 | + 3 => 29, // 3^29 = 68630377364883 |
|
| 170 | + 4 => 23, // 4^23 = 70368744177664 |
|
| 171 | + 5 => 20, // 5^20 = 95367431640625 |
|
| 172 | + 6 => 17, // 6^17 = 16926659444736 |
|
| 173 | + 7 => 16, // 7^16 = 33232930569601 |
|
| 174 | + 8 => 15, // 8^15 = 35184372088832 |
|
| 175 | + 9 => 14, // 9^14 = 22876792454961 |
|
| 176 | + 10 => 13, // 10^13 = 10000000000000 |
|
| 177 | + 11 => 13, // 11^13 = 34522712143931 |
|
| 178 | + 12 => 12, // 12^12 = 8916100448256 |
|
| 179 | + 13 => 12, // 13^12 = 23298085122481 |
|
| 180 | + 14 => 12, // 14^12 = 56693912375296 |
|
| 181 | + 15 => 11, // 15^11 = 8649755859375 |
|
| 182 | + 16 => 11, // 16^11 = 17592186044416 |
|
| 183 | + 17 => 11, // 17^11 = 34271896307633, |
|
| 184 | + 18 => 11, // 18^11 = 64268410079232, |
|
| 185 | + 19 => 11, // 19^10 = 6131066257801, |
|
| 186 | + 20 => 10, // 20^10 = 10240000000000, |
|
| 187 | + 21 => 10, // 21^10 = 16679880978201, |
|
| 188 | + 22 => 10, // 22^10 = 26559922791424, |
|
| 189 | + 23 => 10, // 23^10 = 41426511213649, |
|
| 190 | + 24 => 10, // 24^10 = 63403380965376, |
|
| 191 | + 25 => 10, // 25^10 = 95367431640625, |
|
| 192 | + 26 => 9, // 26^9 = 5429503678976, |
|
| 193 | + 27 => 9, // 27^9 = 7625597484987, |
|
| 194 | + 28 => 9, // 28^9 = 10578455953408, |
|
| 195 | + 29 => 9, // 29^9 = 14507145975869, |
|
| 196 | + 30 => 9, // 30^9 = 19683000000000, |
|
| 197 | + 31 => 9, // 31^9 = 26439622160671, |
|
| 198 | + 32 => 9, // 32^9 = 35184372088832, |
|
| 199 | + 33 => 9, // 33^9 = 46411484401953, |
|
| 200 | + 34 => 9, // 34^9 = 60716992766464, |
|
| 201 | + 35 => 9, // 35^9 = 78815638671875, |
|
| 202 | + 36 => 8, // 36^8 = 2821109907456, |
|
| 203 | + 37 => 8, // 37^8 = 3512479453921, |
|
| 204 | + 38 => 8, // 38^8 = 4347792138496, |
|
| 205 | + 39 => 8, // 39^8 = 5352009260481, |
|
| 206 | + 40 => 8, // 40^8 = 6553600000000, |
|
| 207 | + 41 => 8, // 41^8 = 7984925229121, |
|
| 208 | + 42 => 8, // 42^8 = 9682651996416, |
|
| 209 | + 43 => 8, // 43^8 = 11688200277601, |
|
| 210 | + 44 => 8, // 44^8 = 14048223625216, |
|
| 211 | + 45 => 8, // 45^8 = 16815125390625, |
|
| 212 | + 46 => 8, // 46^8 = 20047612231936, |
|
| 213 | + 47 => 8, // 47^8 = 23811286661761, |
|
| 214 | + 48 => 8, // 48^8 = 28179280429056, |
|
| 215 | + 49 => 8, // 49^8 = 33232930569601, |
|
| 216 | + 50 => 8, // 50^8 = 39062500000000, |
|
| 217 | + 51 => 8, // 51^8 = 45767944570401, |
|
| 218 | + 52 => 8, // 52^8 = 53459728531456, |
|
| 219 | + 53 => 8, // 53^8 = 62259690411361, |
|
| 220 | + 54 => 8, // 54^8 = 72301961339136, |
|
| 221 | + 55 => 8, // 55^8 = 83733937890625, |
|
| 222 | + 56 => 8, // 56^8 = 96717311574016, |
|
| 223 | + 57 => 7, // 57^7 = 1954897493193, |
|
| 224 | + 58 => 7, // 58^7 = 2207984167552, |
|
| 225 | + 59 => 7, // 59^7 = 2488651484819, |
|
| 226 | + 60 => 7, // 60^7 = 2799360000000, |
|
| 227 | + 61 => 7, // 61^7 = 3142742836021, |
|
| 228 | + 62 => 7, // 62^7 = 3521614606208, |
|
| 229 | 229 | ]; |
| 230 | 230 | |
| 231 | 231 | |
@@ -258,7 +258,7 @@ discard block |
||
| 258 | 258 | } |
| 259 | 259 | |
| 260 | 260 | |
| 261 | - $number = ltrim($number, '0'); // GMP treat leading 0 different. |
|
| 261 | + $number = ltrim($number, '0'); // GMP treat leading 0 different. |
|
| 262 | 262 | |
| 263 | 263 | // Convert using BC Math or GMP, preferred GMP which is faster |
| 264 | 264 | // In PHP 5.3.2, gmp base was extended to 2~62 |
@@ -137,5 +137,4 @@ |
||
| 137 | 137 | Use array_merge(): 1.7523620128632 |
| 138 | 138 | Use array_flip(): 1.3521640300751 |
| 139 | 139 | Loop array assign: 3.1361529827118 |
| 140 | - |
|
| 141 | 140 | */ |
@@ -21,19 +21,19 @@ discard block |
||
| 21 | 21 | ]; |
| 22 | 22 | |
| 23 | 23 | $reverseMap = [ |
| 24 | - '0' => 0, '1' => 1, '2' => 2, '3' => 3, '4' => 4, |
|
| 25 | - '5' => 5, '6' => 6, '7' => 7, '8' => 8, '9' => 9, |
|
| 26 | - 'a' => 10, 'b' => 11, 'c' => 12, 'd' => 13, 'e' => 14, |
|
| 27 | - 'f' => 15, 'g' => 16, 'h' => 17, 'i' => 18, 'j' => 19, |
|
| 28 | - 'k' => 20, 'l' => 21, 'm' => 22, 'n' => 23, 'o' => 24, |
|
| 29 | - 'p' => 25, 'q' => 26, 'r' => 27, 's' => 28, 't' => 29, |
|
| 30 | - 'u' => 30, 'v' => 31, 'w' => 32, 'x' => 33, 'y' => 34, |
|
| 24 | + '0' => 0, '1' => 1, '2' => 2, '3' => 3, '4' => 4, |
|
| 25 | + '5' => 5, '6' => 6, '7' => 7, '8' => 8, '9' => 9, |
|
| 26 | + 'a' => 10, 'b' => 11, 'c' => 12, 'd' => 13, 'e' => 14, |
|
| 27 | + 'f' => 15, 'g' => 16, 'h' => 17, 'i' => 18, 'j' => 19, |
|
| 28 | + 'k' => 20, 'l' => 21, 'm' => 22, 'n' => 23, 'o' => 24, |
|
| 29 | + 'p' => 25, 'q' => 26, 'r' => 27, 's' => 28, 't' => 29, |
|
| 30 | + 'u' => 30, 'v' => 31, 'w' => 32, 'x' => 33, 'y' => 34, |
|
| 31 | 31 | 'z' => 35, |
| 32 | - 'A' => 36, 'B' => 37, 'C' => 38, 'D' => 39, 'E' => 40, |
|
| 33 | - 'F' => 41, 'G' => 42, 'H' => 43, 'I' => 44, 'J' => 45, |
|
| 34 | - 'K' => 46, 'L' => 47, 'M' => 48, 'N' => 49, 'O' => 50, |
|
| 35 | - 'P' => 51, 'Q' => 52, 'R' => 53, 'S' => 54, 'T' => 55, |
|
| 36 | - 'U' => 56, 'V' => 57, 'W' => 58, 'X' => 59, 'Y' => 60, |
|
| 32 | + 'A' => 36, 'B' => 37, 'C' => 38, 'D' => 39, 'E' => 40, |
|
| 33 | + 'F' => 41, 'G' => 42, 'H' => 43, 'I' => 44, 'J' => 45, |
|
| 34 | + 'K' => 46, 'L' => 47, 'M' => 48, 'N' => 49, 'O' => 50, |
|
| 35 | + 'P' => 51, 'Q' => 52, 'R' => 53, 'S' => 54, 'T' => 55, |
|
| 36 | + 'U' => 56, 'V' => 57, 'W' => 58, 'X' => 59, 'Y' => 60, |
|
| 37 | 37 | 'Z' => 61, |
| 38 | 38 | ]; |
| 39 | 39 | |
@@ -41,7 +41,7 @@ discard block |
||
| 41 | 41 | }; |
| 42 | 42 | |
| 43 | 43 | |
| 44 | -$arrayMerge = function () { |
|
| 44 | +$arrayMerge = function() { |
|
| 45 | 45 | $map = array_merge( |
| 46 | 46 | ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'], |
| 47 | 47 | ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm'], |
@@ -51,19 +51,19 @@ discard block |
||
| 51 | 51 | ); |
| 52 | 52 | |
| 53 | 53 | $reverseMap = array_merge( |
| 54 | - ['0' => 0, '1' => 1, '2' => 2, '3' => 3, '4' => 4], |
|
| 55 | - ['5' => 5, '6' => 6, '7' => 7, '8' => 8, '9' => 9], |
|
| 56 | - ['a' => 10, 'b' => 11, 'c' => 12, 'd' => 13, 'e' => 14], |
|
| 57 | - ['f' => 15, 'g' => 16, 'h' => 17, 'i' => 18, 'j' => 19], |
|
| 58 | - ['k' => 20, 'l' => 21, 'm' => 22, 'n' => 23, 'o' => 24], |
|
| 59 | - ['p' => 25, 'q' => 26, 'r' => 27, 's' => 28, 't' => 29], |
|
| 60 | - ['u' => 30, 'v' => 31, 'w' => 32, 'x' => 33, 'y' => 34], |
|
| 54 | + ['0' => 0, '1' => 1, '2' => 2, '3' => 3, '4' => 4], |
|
| 55 | + ['5' => 5, '6' => 6, '7' => 7, '8' => 8, '9' => 9], |
|
| 56 | + ['a' => 10, 'b' => 11, 'c' => 12, 'd' => 13, 'e' => 14], |
|
| 57 | + ['f' => 15, 'g' => 16, 'h' => 17, 'i' => 18, 'j' => 19], |
|
| 58 | + ['k' => 20, 'l' => 21, 'm' => 22, 'n' => 23, 'o' => 24], |
|
| 59 | + ['p' => 25, 'q' => 26, 'r' => 27, 's' => 28, 't' => 29], |
|
| 60 | + ['u' => 30, 'v' => 31, 'w' => 32, 'x' => 33, 'y' => 34], |
|
| 61 | 61 | ['z' => 35], |
| 62 | - ['A' => 36, 'B' => 37, 'C' => 38, 'D' => 39, 'E' => 40], |
|
| 63 | - ['F' => 41, 'G' => 42, 'H' => 43, 'I' => 44, 'J' => 45], |
|
| 64 | - ['K' => 46, 'L' => 47, 'M' => 48, 'N' => 49, 'O' => 50], |
|
| 65 | - ['P' => 51, 'Q' => 52, 'R' => 53, 'S' => 54, 'T' => 55], |
|
| 66 | - ['U' => 56, 'V' => 57, 'W' => 58, 'X' => 59, 'Y' => 60], |
|
| 62 | + ['A' => 36, 'B' => 37, 'C' => 38, 'D' => 39, 'E' => 40], |
|
| 63 | + ['F' => 41, 'G' => 42, 'H' => 43, 'I' => 44, 'J' => 45], |
|
| 64 | + ['K' => 46, 'L' => 47, 'M' => 48, 'N' => 49, 'O' => 50], |
|
| 65 | + ['P' => 51, 'Q' => 52, 'R' => 53, 'S' => 54, 'T' => 55], |
|
| 66 | + ['U' => 56, 'V' => 57, 'W' => 58, 'X' => 59, 'Y' => 60], |
|
| 67 | 67 | ['Z' => 61] |
| 68 | 68 | ); |
| 69 | 69 | |
@@ -71,7 +71,7 @@ discard block |
||
| 71 | 71 | }; |
| 72 | 72 | |
| 73 | 73 | |
| 74 | -$arrayFlip = function () { |
|
| 74 | +$arrayFlip = function() { |
|
| 75 | 75 | $map = array_merge( |
| 76 | 76 | ['0', '1', '2', '3', '4', '5', '6', '7', '8', '9'], |
| 77 | 77 | ['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm'], |