volcanus / radix-converter
此包已被废弃,不再维护。未推荐替代包。
1.0.1
2017-09-06 09:08 UTC
Requires
- php: ^5.6||^7.0
Requires (Dev)
- phpunit/phpunit: ^5.7.20||^6.0
README
##RadixConverter
这是一个执行N进制数转换的类。默认设置为62进制转换。
use \Volcanus\RadixConverter\RadixConverter;
$converter = new RadixConverter();
$converter->encode(62)->value(); // '10'
$converter->decode('10')->value(); // '62'
可以轻松地使用静态调用。
RadixConverter::encode(62); // '10'
RadixConverter::decode('10'); // 62
支持16进制和36进制的转换。
$converter->config('map', RadixConverter::MAP_HEXADECIMAL);
$converter->encode(65535)->value(); // 'ffff'
$converter->config('map', RadixConverter::MAP_ALPHANUMERIC_36);
$converter->encode(65535)->value(); // '1ekf'
也可以自定义转换。(不支持多字节)
$converter->config('map', 'OKNU');
$converter->encode(0)->value(); // 'O'
$converter->encode(4)->value(); // 'KO'
$converter->encode(16)->value(); // 'KOO'
$converter->encode(228)->value(); // 'UNKO'
在可以使用BC Math函数的环境中,如果启用acceptLong设置,则可以将PHP_INT_MAX以上的整数值作为字符串处理。
$converter->config('acceptLong', true);
$converter->encode('2147483648')->value(); // '2lkCB2'
$converter->encode('2147483648')->decode()->value(); // '2147483648'
$converter->encode('9223372036854775808')->value(); // 'aZl8N0y58M8'
$converter->encode('9223372036854775808')->decode()->value(); // '9223372036854775808'