1 回答

TA貢獻(xiàn)1789條經(jīng)驗 獲得超10個贊
uniqid() 可以多次創(chuàng)建相同的 id:
<?php
for($i=0;$i<20;$i++) {
? ? echo uniqid(), PHP_EOL;
}
/** Example of Output:
5819f3ad1c0ce
5819f3ad1c0ce
5819f3ad1c0ce
5819f3ad1c0ce
5819f3ad1c0ce
5819f3ad1c0ce
5819f3ad1c0ce
5819f3ad1c0ce
5819f3ad1c4b6
5819f3ad1c4b6
5819f3ad1c4b6
5819f3ad1c4b6
5819f3ad1c4b6
5819f3ad1c4b6
5819f3ad1c4b6
5819f3ad1c4b6
5819f3ad1c4b6
5819f3ad1c4b6
5819f3ad1c4b6
5819f3ad1c4b6 */
我建議使用他創(chuàng)建的函數(shù)而不是使用 uniqid()。
<?php
function uniqidReal($lenght = 13) {
? ? // uniqid gives 13 chars, but you could adjust it to your needs.
? ? if (function_exists("random_bytes")) {
? ? ? ? $bytes = random_bytes(ceil($lenght / 2));
? ? } elseif (function_exists("openssl_random_pseudo_bytes")) {
? ? ? ? $bytes = openssl_random_pseudo_bytes(ceil($lenght / 2));
? ? } else {
? ? ? ? throw new Exception("no cryptographically secure random function available");
? ? }
? ? return substr(bin2hex($bytes), 0, $lenght);
}
- 1 回答
- 0 關(guān)注
- 98 瀏覽
添加回答
舉報