carrontiger/conversion

十进制数之间的转换。

v1.0.2 2024-04-07 21:53 UTC

This package is auto-updated.

Last update: 2024-09-07 23:06:24 UTC


README

十进制数之间的转换

转换器比较

示例

元信息

单独示例

二进制数

十进制数到二进制数的转换
use carrontiger\Conversion\BinaryConverter;

$binaryConverter = new BinaryConverter();

echo $binaryConverter->fromDecimal(123);
//  "01111011"
二进制数到十进制数的转换
use carrontiger\Conversion\BinaryConverter;

$binaryConverter = new BinaryConverter();

echo $binaryConverter->toDecimal('01111011');
//  123

八进制数

十进制数到八进制数的转换
use carrontiger\Conversion\OctalConverter;

$octalConverter = new OctalConverter();

echo $octalConverter->fromDecimal(123);
//  "173"
八进制数到十进制数的转换
use carrontiger\Conversion\BinaryConverter;

$octalConverter = new OctalConverter();

echo $octalConverter->toDecimal('173');
//  123

十六进制数

十进制数到十六进制数的转换
use carrontiger\Conversion\HexadecimalConverter;

$hexadecimalConverter = new HexadecimalConverter()

echo $hexadecimalConverter->fromDecimal(123);
//  "7B"
十六进制数到十进制数的转换
use carrontiger\Conversion\HexadecimalConverter;

$hexadecimalConverter = new HexadecimalConverter();

echo $hexadecimalConverter->toDecimal('7B');
//  123

不区分大小写的字母十进制数

不区分大小写的字母十进制数编码使用以下36个“数字”

0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ

十进制数到不区分大小写的字母十进制数的转换
use carrontiger\Conversion\CaseInsensitiveAlphaDecimalConverter;

$ciAlphaDecimalConverter = new CaseInsensitiveAlphaDecimalConverter()

echo $ciAlphaDecimalConverter->fromDecimal(123);
//  "3F"
不区分大小写的字母十进制数到十进制数的转换
use carrontiger\Conversion\CaseInsensitiveAlphaDecimalConverter;

$ciAlphaDecimalConverter = new CaseInsensitiveAlphaDecimalConverter();

echo $ciAlphaDecimalConverter->toDecimal('3F');
//  123

区分大小写的字母十进制数

区分大小写的字母十进制数编码使用以下62个“数字”

0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz

十进制数到区分大小写的字母十进制数的转换
use carrontiger\Conversion\CaseSensitiveAlphaDecimalConverter;

$alphaDecimalConverter = new CaseSensitiveAlphaDecimalConverter()

echo $alphaDecimalConverter->fromDecimal(123);
//  "1z"
区分大小写的字母十进制数到十进制数的转换
use carrontiger\Conversion\CaseSensitiveAlphaDecimalConverter;

$alphaDecimalConverter = new CaseSensitiveAlphaDecimalConverter();

echo $alphaDecimalConverter->toDecimal('1z');
//  123

ASCII数

ASCII数编码使用以下94个“数字”

0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz!"#$%&'()*+,-./:;<=>?@[\]^_`{\|}~

由于使用了非字母字符,因此将ASCII数嵌入文本或用作纯HTTP查询参数等并不实用。一个用途可能是紧凑地编码大整数。但最重要的是,这是一个可以定义的任意数制示例。

如果您要定义一个数制(通过扩展AbstractDecimalConverter类),请注意,只能使用单字节字符作为数字。

十进制数到ASCII数的转换
use carrontiger\Conversion\AsciiDecimalConverter;

$asciiDecimalConverter = new AsciiDecimalConverter()

echo $asciiDecimalConverter->fromDecimal(123);
//  "1T"
ASCII数到十进制数的转换
use carrontiger\Conversion\AsciiDecimalConverter;

$asciiDecimalConverter = new AsciiDecimalConverter()

echo $asciiDecimalConverter->toDecimal('1T');
//  123