uniqid

uniqid -- ユニークな ID を生成する

説明

string uniqid(string prefix, boolean [lcg]);

uniqid は、ミリ秒単位の現在時刻に基づき 先頭辞(prefix)を付けたユニークな ID を返します。 いくつかのホスト上で同時に ID を生成させる場合、 全く同じミリ秒の ID が生成されるのを防ぐのに prefix が有用です。 prefixには 114 文字までの長さを指定することができます。

オプションの lcg パラメータが true の場合、 uniqid は、より結果をユニークにするために "combined LCG" を返り値の最後に追加します。

prefix を空とした場合、返される文字列の長さは、 13文字となります。lcg が true の場合は、 23文字となります。

注意: lcg パラメータは、 PHP 4 または PHP 3.0.13 以降でのみ使用可能です。

ユニークな ID またはトークンが必要な場合、そして、 ネットワーク経由でユーザーにそのトークンを渡そうとする場合、 次の例のようにするのが推奨されます。


 $token = md5(uniqid("")); // ランダム要素なし
 $better_token = md5(uniqid(rand())); // 推測が困難であり、より優れている。
 

この例は、極めて予測困難な 32 文字の ID (128 ビット 16 進数) を 作成します。