定制 semperton/multibase 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

semperton/multibase

Composer 安装命令:

composer require semperton/multibase

包简介

Base transcoder with multibyte character alphabet support.

README 文档

README

Semperton

Semperton Multibase

Base transcoder with multibyte character alphabet support.

Installation

Just use Composer:

composer require semperton/multibase

Multibase requires PHP 7.4+ and the mbstring extension

Tip: Install the GMP extension for faster base conversion up to base 62

Package

Included base transcoders:

  • Base58
  • Base62
  • Base85 RFC 1924

Usage

Multibase transcoders are able to convert any arbitrary data. Use them as URL / MD5 shorteners, password generators, Base64 alternatives...

use Semperton\Multibase\Base62;
use Semperton\Multibase\Base85;

// basic usage
$base62 = new Base62();
$base62->encode('Hello World'); // 73XpUgyMwkGr29M
$base62->decode('73XpUgyMwkGr29M'); // Hello World

// shorten md5 hash
$hash = md5('Hello World'); // b10a8db164e0754105b7a99be72e3fe5

$short = $base62->encode(hex2bin($hash)); // 5O4SoozqXEOwlYtvkC5zkr
$short = $base62->encode(md5('Hello World', true)); // same as above

$decoded = $base62->decode($short);
$hash === bin2hex($decoded); // true

// password generation
$bytes = openssl_random_pseudo_bytes(16);
$password = (new Base85())->encode($bytes); // e.g. Ncg>RWSYO+2t@~G8PO0J

Custom transcoders

You can create custom transcoders with your own alphabets (multibyte support). Just for fun, how about an emoji transcoder?

use Semperton\Multibase\Transcoder\BaseTranscoder;

$emojiTranscoder = new BaseTranscoder(
	'🧳🌂☂️🧵🪡🪢🧶👓🕶🥽🥼🦺👔👕👖🧣🧤🧥🧦👗👘🥻🩴🩱🩲' .
	'🩳👙👚👛👜👝🎒👞👟🥾🥿👠👡🩰👢👑👒🎩🎓🧢⛑🪖💄💍💼'
);

$encoded = $emojiTranscoder->encode('Hello World'); // ☂🪢👟🩴🩰🥻👚👙🧢🩲🧥🥽🎩👙👝🎒
$emojiTranscoder->decode($encoded); // Hello World

semperton/multibase 适用场景与选型建议

semperton/multibase 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 12 次下载、GitHub Stars 达 0, 最近一次更新时间为 2022 年 07 月 29 日, 在 PHP 生态内属于活跃度较高的组件。

我们在过去多个企业项目中使用过 semperton/multibase 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 semperton/multibase 我们能提供哪些服务?
定制开发 / 二次开发

基于 semperton/multibase 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 12
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 19
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2022-07-29