sqids php
1.0.0
Sqids ( 「イカズ」と発音) は、数値から一意の ID を生成できる小さなライブラリです。これは、リンクの短縮、高速かつ URL セーフな ID の生成、およびデータベースの検索を迅速化するための数値へのデコードに適しています。
特徴:
以下に適しています:
良くないもの:
Composer とともにこのパッケージをプロジェクトのルート ディレクトリに置く必要があります。
composer require sqids/sqids
次に、クラスをアプリケーションにインポートできます。
use Sqids Sqids ;
$ sqids = new Sqids ();
重要
Sqid が機能するには、 bcmath
またはgmp
拡張子のいずれかが必要です。
シンプルなエンコードとデコード:
$ sqids = new Sqids ();
$ id = $ sqids -> encode ([ 1 , 2 , 3 ]); // "86Rf07"
$ numbers = $ sqids -> decode ( $ id ); // [1, 2, 3]
注記
?アルゴリズムの設計により、複数の ID をデコードして同じ一連の数値に戻すことができます。 ID が正規であることが設計にとって重要な場合は、デコードされた数値を手動で再エンコードし、生成された ID が一致することを確認する必要があります。
ID の最小長を強制します。
$ sqids = new Sqids (minLength: 10 );
$ id = $ sqids -> encode ([ 1 , 2 , 3 ]); // "86Rf07xd4z"
$ numbers = $ sqids -> decode ( $ id ); // [1, 2, 3]
カスタムのアルファベットを指定して ID をランダム化します。
$ sqids = new Sqids (alphabet: ' FxnXM1kBN6cuhsAvjW3Co7l2RePyY8DwaU04Tzt9fHQrqSVKdpimLGIJOgb5ZE ' );
$ id = $ sqids -> encode ([ 1 , 2 , 3 ]); // "B4aajs"
$ numbers = $ sqids -> decode ( $ id ); // [1, 2, 3]
自動生成された ID のどこにも特定の単語が表示されないようにします。
$ sqids = new Sqids (blocklist: [ ' 86Rf07 ' ]);
$ id = $ sqids -> encode ([ 1 , 2 , 3 ]); // "se8ojk"
$ numbers = $ sqids -> decode ( $ id ); // [1, 2, 3]
マサチューセッツ工科大学