首页 >后端开发 >PHP问题 >php生成8位不重复字符串

php生成8位不重复字符串

angryTom
angryTom原创
2019-10-19 13:23:164218浏览

php生成8位不重复字符串

php生成8位不重复字符串

我们在制作网页时会遇到获取随机数,随机字符串的需求,下面介绍一种方法,产生随机8位不重复字符串:

function randString() {
        $code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
        $rand = $code[rand(0,25)]
            .strtoupper(dechex(date('m')))
            .date('d').substr(time(),-5)
            .substr(microtime(),2,5)
            .sprintf('%02d',rand(0,99));
        for(
            $a = md5( $rand, true ),
            $s = '0123456789ABCDEFGHIJKLMNOPQRSTUV',
            $d = '',
            $f = 0;
            $f < 8;
            $g = ord( $a[ $f ] ),
            $d .= $s[ ( $g ^ ord( $a[ $f + 8 ] ) ) - $g & 0x1F ],
            $f++
        );
        return  $d;
}

使用

echo randString().&#39;<br>&#39;;
echo randString().&#39;<br>&#39;;
echo randString().&#39;<br>&#39;;

结果

RAUHT68I
PMI8FO50
O6KFACQ8

 更多PHP相关知识,请访问PHP中文网

以上是php生成8位不重复字符串的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn