ホームページ  >  記事  >  バックエンド開発  >  数値に基づいて一意の文字列 ID を生成する PHP 拡張機能

数値に基づいて一意の文字列 ID を生成する PHP 拡張機能

不言
不言オリジナル
2018-04-13 16:01:282211ブラウズ

この記事の内容は、数値に基づいて一意の文字列 ID を生成する PHP 拡張機能を共有することです。必要な友達が参照できるようにします。

Hashid は、一意の非連続文字列 ID です。番号を生成でき、これらの ID を復号化することもでき、ユーザーに公開したくないデジタル ID を暗号化するために使用することもできます。

インストール

$ git clone https://github.com/cdoco/hashids.phpc.git
$ cd hashids.phpc
$ phpize && ./configure && make && make install

php.ini でいくつかのオプションを設定することも、コンストラクターで設定することもできますが、パフォーマンスを向上させるために、php.ini で設定することをお勧めします。

[hashids]
extension=hashids.so

//默认是空字符串
hashids.salt=cdoco

//默认长度是 0
hashids.min_hash_length=20

//默认是 abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890
//你可以自己设置它,比如你使用全部小写的字符
hashids.alphabet=abcdefghijklmnopqrstuvwxyz

クイックスタート

$hashids = new Hashids();

$hash = $hashids->encode(1, 2, 3, 4, 5); // ADf9h9i0sQ
$numbers = $hashids->decode($hash); // [1, 2, 3, 4, 5]

//或者你可以用静态方法调用
$hash = Hashids::encode(1, 2, 3, 4, 5); // ADf9h9i0sQ
$numbers = Hashids::decode($hash); // [1, 2, 3, 4, 5]

パフォーマンス

以前は純粋なPHPコードで実装されていた関数でしたが、現在はPHP拡張機能にカプセル化されており、パフォーマンスは純粋なPHPバージョンよりも約100倍優れています

$hashids = new Hashids();

$hash = $hashids->encode(1, 2, 3, 4, 5); // ADf9h9i0sQ
$hash = $hashids->encode([1, 2, 3, 4, 5]); // ADf9h9i0sQ
数値に基づいて一意の文字列 ID を生成する PHP 拡張機能ConstructionMethodの他のパラメーターrreee

16ベース暗号化と復号化

以上が数値に基づいて一意の文字列 ID を生成する PHP 拡張機能の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。