PHP マニュアル
前のページ |  | 次のページ

# uniqid

(PHP 3, PHP 4, PHP 5)

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

## 説明

string uniqid ( [string prefix [, bool more_entropy]] )

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

オプションの more_entropy パラメータが `TRUE` の場合、 uniqid() は、より結果をユニークにするために、 combined linear congruential generator を用いた結果を返り値の最後に追加します。

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

> 注意: prefix パラメータは PHP 5 ではオプションとなります。

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

`<?php // prefix なし $token = md5(uniqid()); // よりよい方法。推測されにくい $better_token = md5(uniqid(rand(), true)); ?>`

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

前のページ | ホーム | 次のページ
time_sleep_until | 上に戻る | unpack