PHPマニュアル | ユーザフォーラムで議論/質問 | マニュアル検索 | ハイライト | ハイライトオフ | ポータル | php spot

uniqid | JavaScript入門&応用&リファレンスなら「JavaScriptist」

  

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_entropyTRUE の場合は、 23 文字となります。

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

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

<?php
// prefix なし
$token = md5(uniqid());

// よりよい方法。推測されにくい
$better_token = md5(uniqid(rand(), true));
?>

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


フォーラムで「uniqid」について話す
各種マニュアル: PHPマニュアル | PEARマニュアル | Smarty(英語)マニュアル | PHP-GTKマニュアル | uniqid」をGoogle検索
copyright © 1997-2009 PHP ドキュメント作成グループ(ライセンス). provided by php spot. マニュアル: