Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
私のウェブサイトには、投稿ごとに一意の ID を生成し、データベースに送信するセクションがあります。問題は、生成される ID の長さが合計 16 文字であり、ID を 6 文字にする必要があることです。
これは、ID の生成に使用されるコードです。
$order_id = uniqid(rand(10,1000), false);
そのような変更を達成できる方法はありますか?
データベースで auto_incremental を使用してこれを実行しないのはなぜですか? したがって、最初の ID は 1、次に 2 などです。6 桁だけが必要な場合は、999 999 個の異なるキーが必要になります。
substr()から最初の 6 文字を取得するために使用する、ここで以前に受け入れられた回答uniqid()は、100% 安全ではありません。uniqidWHOLE IDが一意になる一意のIDを生成します。これらの文字を削除すると、重複が発生する可能性があります。
substr()
uniqid()
uniqid