可逆的base62 ID混淆器。

1.3.0 2017-02-07 15:14 UTC

This package is not auto-updated.

Last update: 2024-09-14 14:30:18 UTC


README

Build Status Coverage Status

Tiny

可逆的base62 ID混淆器

作者

最初由Jacob DeHart创建,Ruby和Python版本由Kyle Bragger移植

现在由 Zack Kitzmiller 维护。

安装

通过Composer安装

{
    "require": {
        "zackkitzmiller/tiny": "1.2.0"
    },
}

用法

$tiny = new \ZackKitzmiller\Tiny('5SX0TEjkR1mLOw8Gvq2VyJxIFhgCAYidrclDWaM3so9bfzZpuUenKtP74QNH6B');

echo $tiny->to(5);
// E

echo $tiny->from('E');
// 5

echo $tiny->to(126);
// XX

echo $tiny->from('XX');
// 126

echo $tiny->to(999);
// vk

echo $tiny->from('vk');
// 999

配置

您必须使用一个随机的字母数字集创建Tiny的新实例,其中每个字符只能使用一次。开始使用Tiny后,请勿更改此设置,因为您将无法进行反转。

您可以使用命令行中的 $ ./bin/genset 生成随机集。

使用Laravel吗?

如果您使用Laravel并希望使用更Laravel风格的简洁语法,只需遵循以下步骤。

首先打开您的 app/config/app.php 文件,并将其滚动到提供者部分,添加

'providers' => array(
    ...
    'ZackKitzmiller\TinyServiceProvider',
)

然后添加以下内容到别名中

'aliases' => array(
    ...
    'Tiny' => 'ZackKitzmiller\Facades\Tiny',
)

最后,运行 php artisan config:publish zackkitzmiller/tiny 发布配置文件,然后运行 php artisan tiny:generate 创建一个有效密钥。

Laravel中的用法

echo Tiny::to(999);
// echos vk

echo Tiny::from('E');
// echos 5