我希望生成某种类型的ID,类似于Google为其课堂服务生成网址的方式。
例如:
https://classroom.google.com/u/0/c/MTg1MKIwNTk4
我希望能够生成MTg1MKIwNTk4
部分。
它不一定是加密安全的或类似的东西,它只是用于URL。
如何使用PHP(+ MySQL)完成这项工作?
感谢。
答案 0 :(得分:2)
使用此代码:
$charset = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
$str = '';
$length = strlen($charset);
$count = 12;
while ($count--) {
$str .= $charset[mt_rand(0, $length-1)];
}
echo $str;
如果您使用PHP7,则可以使用random_int
代替mt_rand
来获得更好的随机数。 (由@zaph在评论中提出)。
当然,如果你想拥有更容易手工复制的随机字符串(例如,如果你打印你的网址),那么你可以省略一些可能含糊不清的字符(例如' l'或' 0') - (再次由@zaph在评论中提出)
答案 1 :(得分:0)