codekandis / base64-codec
`codekandis/base64-codec`是一个库,它提供了一种面向对象的方式来编码和从Base64解码。
2.1.0
2021-01-17 23:48 UTC
Requires
- php: ^7.4
- codekandis/constants-classes-translator: ^1
Requires (Dev)
- codekandis/phpunit: ^3
- roave/security-advisories: dev-master
README
使用Base64编码器,您可以以面向对象的方式对Base64数据进行编码和解码。它包装了PHP的函数base64_encode()和base64_decode()。
索引
安装
使用以下命令安装最新版本:
$ composer require codekandis/base64-codec
如何使用
编码值
以下示例展示了如何编码一个值。
$value = '8ÇÂ<Ç<ï¯ñ×78B>ïAË¡4Wïc§ÿPîXø4\Êá¡t7?/SµÚ²·x}0¤¯ç»M'; ( new Base64Encoder() ) ->encodeToStandard( $value ); /** * OMOHw4I8w4c8w6/Cr8Oxw5c3OEI+w69Bw4vCoTRXw69jwqfDv1DDrljDuDRcw4rDocKhdDc/L1PCtcOawrLCt3h9MMKkwq/Dp8K7TQ== */ ( new Base64Encoder() ) ->encodeToUriSafe( $value ); /** * OMOHw4I8w4c8w6_Cr8Oxw5c3OEI-w69Bw4vCoTRXw69jwqfDv1DDrljDuDRcw4rDocKhdDc_L1PCtcOawrLCt3h9MMKkwq_Dp8K7TQ */
解码值
以下示例展示了如何解码一个值。
$standardBase64Value = 'OMOHw4I8w4c8w6/Cr8Oxw5c3OEI+w69Bw4vCoTRXw69jwqfDv1DDrljDuDRcw4rDocKhdDc/L1PCtcOawrLCt3h9MMKkwq/Dp8K7TQ=='; ( new Base64Decoder() ) ->decodeFromStandard( $standardBase64Value ); /** * 8ÇÂ<Ç<ï¯ñ×78B>ïAË¡4Wïc§ÿPîXø4\Êá¡t7?/SµÚ²·x}0¤¯ç»M */ $uriSafeBase64Value = 'OMOHw4I8w4c8w6_Cr8Oxw5c3OEI-w69Bw4vCoTRXw69jwqfDv1DDrljDuDRcw4rDocKhdDc_L1PCtcOawrLCt3h9MMKkwq_Dp8K7TQ'; ( new Base64Decoder() ) ->decodeFromUriSafe( $uriSafeBase64Value ); /** * 8ÇÂ<Ç<ï¯ñ×78B>ïAË¡4Wïc§ÿPîXø4\Êá¡t7?/SµÚ²·x}0¤¯ç»M */
与PHP的Base64函数的不同之处
base64_decode()接受一个额外的参数$strict,用于指定是否强制将其解码为关联数组。在Base64DecoderInterface中省略了此参数,而其目的是始终以严格模式进行解码。