codekandis/base64-codec

`codekandis/base64-codec`是一个库,它提供了一种面向对象的方式来编码和从Base64解码。

2.1.0 2021-01-17 23:48 UTC

This package is auto-updated.

Last update: 2024-09-28 21:40:26 UTC


README

Version License Minimum PHP Version Code Coverage

使用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中省略了此参数,而其目的是始终以严格模式进行解码。