bakame / aide-base32
使用PHP中的函数或类进行base32编码和解码
dev-main
2024-04-01 04:10 UTC
Requires
- php: ^8.1
This package is auto-updated.
Last update: 2024-08-31 00:46:52 UTC
README
提供函数或类以允许使用RFC4648 base32算法对字符串进行编码和解码。
注意
Aide for Base32的子分割。
⚠️ 这是一个子分割,对于拉取请求和问题,请访问:https://github.com/bakame-php/aide
安装
Composer
composer require bakame-php/aide-base32
系统要求
您需要
- PHP >= 8.1 但推荐使用最新的稳定版本
使用
此包提供用户空间的base32编码和解码机制。
base32_encode(string $decoded, string $alphabet = PHP_BASE32_ASCII, $padding = '='): string base32_decode(string $encoded, string $alphabet = PHP_BASE32_ASCII, $padding = '=', bool $strict = false): string
参数
$decoded
: 要进行base32_encode
编码的数据$encoded
: 要进行base32_decode
解码的数据$alphabet
: base32字母表,默认为PHP_BASE32_ASCII
。$padding
: 填充字符
如果$alphabet
是PHP_BASE32_ASCII
并且$padding
是=
,则按照RFC4648 US-ASCII标准进行转换。如果$alphabet
是PHP_BASE32_HEXC
并且$padding
是=
,则按照RFC4648 HEX标准进行转换。
您可以提供自己的32个字符的字母表和自己的填充字符。
$strict
: 告知是否需要执行严格解码
如果将严格参数设置为true
,则base32_decode()函数将返回false
- 如果编码序列长度无效
- 如果输入包含来自base64字母表之外的字符。
- 如果填充无效
- 如果编码字符不遵循字母表的字母大小写。
否则列出约束条件将被静默忽略或丢弃。
<?php base32_encode('Bangui'); // returns 'IJQW4Z3VNE======' base32_decode('IJQW4Z3VNE======'); // returns 'Bangui' base32_decode('IJQW4Z083VNE======'); // returns 'Bangui' base32_decode('IJQW4Z083VNE======', PHP_BASE32_ASCII, true); // return false base32_encode('Bangui', PHP_BASE32_HEX, '*'); // returns '89GMSPRLD4******' base32_decode('89GMSPRLD4******', PHP_BASE32_HEX, '*', true); // returns 'Bangui'