php怎么生成6位的不重复的字符串

2025-04-29 08:21:41
推荐回答(2个)
回答1:

php生成6位不重复的字符串,用到的工具:notepad++,步骤如下:

  1. php代码部分:

echo "刷新输出不同的六个字符组合:".substr(md5(microtime(true)), 0, 6);
?>

说明:此函数先获取当前时间,然后通过md5进行加密,然后再通过substr截取六位数,当前时间是不会重复的,从而保证生成的六个字符串永远不会重复。

效果图:

注意事项:此代码必须在php环境下运行。

回答2:

function make_coupon_card() {
$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 < 2;
$g = ord( $a[ $f ] ),
$d .= $s[ ( $g ^ ord( $a[ $f + 2 ] ) ) - $g & 0x1F ],
$f++
);
return $d;
}
echo make_coupon_card();
希望你能采纳。谢谢。
//方法2建议下面这个方法
$numbers = range ('a','z');
//shuffle 将数组顺序随即打乱
shuffle ($numbers);
//array_slice 取该数组中的某一段
$num=6;
$result = array_slice($numbers,0,$num);
$aa = implode('',$result);
print_r($aa);