如何在PHP中生成随机、唯一的字母数字字符串

有很多方法可以在PHP中生成随机, 唯一的字母数字字符串, 如下所示:
使用str_shuffle()函数:
str_shuffle()函数是PHP中的内置函数, 用于随机地对作为参数传递给该函数的字符串的所有字符进行随机排序。传递数字时, 会将数字视为字符串并随机播放。此函数不会更改原始字符串或作为参数传递给它的数字。而是返回一个新字符串, 该字符串是参数中传递给它的字符串的可能排列之一。
例子:

< ?php//This function will return a random //string of specified length function random_strings( $length_of_string ) {//String of all alphanumeric character $str_result = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz' ; //Shufle the $str_result and returns substring //of specified length return substr ( str_shuffle ( $str_result ), 0, $length_of_string ); }//This function will generate //Random string of length 10 echo random_strings(10); echo "\n" ; //This function will generate //Random string of length 8 echo random_strings(8); ?>

输出如下:
hnQVgxd4FE6EsbCc53

使用md5()函数:
md5()函数用于计算字符串的MD5哈希值。传递时间戳作为参数, md5函数会将其转换为32位字符
例子:
< ?php//This function will return a random //string of specified length function random_strings( $length_of_string ) {//md5 the timestamps and returns substring //of specified length return substr (md5(time()), 0, $length_of_string ); }//This function will generate //Random string of length 10 echo random_strings(10); echo "\n" ; //This function will generate //Random string of length 8 echo random_strings(8); ?>

输出如下:
12945f084512945f08

使用sha1()函数:
此函数计算字符串的sha-1哈希。传递时间戳作为参数, sha1()函数会将其转换为sha1-哈希。
例子:
< ?php//This function will return //A random string of specified length function random_strings( $length_of_string ) {//sha1 the timstamps and returns substring //of specified length return substr (sha1(time()), 0, $length_of_string ); }//This function will generate //Random string of length 10 echorandom_strings(10); echo "\n" ; //This function will generate //Random string of length 8 echorandom_strings(8); ?>

输出如下:
643f60c52d643f60c5

使用randon_bytes()函数:
此函数生成加密安全的伪随机字节。它返回一个字符串, 该字符串包含请求数量的加密安全随机字节。使用binehex()函数将字节转换为十六进制格式。
例子:
< ?php//This function will return //A random string of specified length function random_strings( $length_of_string ) {//random_bytes returns number of bytes //bin2hex converts them into hexadecimal format return substr (bin2hex(random_bytes( $length_of_string )), 0, $length_of_string ); }//This function will generate //Random string of length 10 echo random_strings(10); echo "\n" ; //This function will generate //Random string of length 8 echo random_strings(8); ?>

【如何在PHP中生成随机、唯一的字母数字字符串】输出如下:
64713970f367b575a3

    推荐阅读