PHP 生成随机不重复 ID 代码优化:使用 do-while 循环
PHP 生成随机不重复 ID 代码优化:使用 do-while 循环
在 PHP 开发中,经常需要生成随机 ID,并确保这些 ID 不重复。可以使用以下代码来实现:
$used_ids = []; // 存储已经使用过的ID
$min = 1;
$max = 10;
do{
$id = rand($min,$max); // 生成随机ID
}while(in_array($id, $used_ids)); // 检查ID是否已经被使用过
$used_ids[] = $id; // 将新生成的ID加入已使用ID列表
echo '/home/api/updatecachemip?id=' . $id . '&hash='.substr(md5('yg_book_'.$id), 5, 16).'<br>';
使用 do-while 循环可以保证生成的随机 ID 一定是未被使用过的。如果生成的 ID 已经被使用过,就重新生成一个新 ID,直到生成一个未被使用过的 ID 为止。
优点:
- 代码结构更清晰,逻辑更易理解
- 避免了使用 while 循环时可能出现的空循环
- 保证生成随机 ID 的效率和准确性
注意:
- 如果需要生成大量的随机 ID,建议使用更有效的算法,例如 UUID
- 可以根据实际需求调整
$min和$max的值 - 可以使用
uniqid()函数生成更复杂的随机 ID
原文地址: https://www.cveoy.top/t/topic/m7px 著作权归作者所有。请勿转载和采集!