PHP代码,用于生成外观不错的优惠券代码(字母和数字的组合)
对于电子商务网站,我想生成一个随机优惠券代码,看起来比随机生成的值更好。它应该是一个可读的优惠券代码,全部大写,没有特殊字符,只有字母(A-Z)和数字(0-9)。
由于人们可能在其他地方阅读/打印它,我们也需要使它具有易于传达的值,可能长达8-10个字符。
也许,
AHS3DJ6BW
B83JS1HSK
(我输入了这个,所以它并不是那么随机)
对于电子商务网站,我想生成一个随机优惠券代码,看起来比随机生成的值更好。它应该是一个可读的优惠券代码,全部大写,没有特殊字符,只有字母(A-Z)和数字(0-9)。
由于人们可能在其他地方阅读/打印它,我们也需要使它具有易于传达的值,可能长达8-10个字符。
也许,
AHS3DJ6BW
B83JS1HSK
(我输入了这个,所以它并不是那么随机)
$chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
$res = "";
for ($i = 0; $i < 10; $i++) {
$res .= $chars[mt_rand(0, strlen($chars)-1)];
}
可以通过预分配字符串并缓存 的结果来优化此目的。这是留给读者的练习,因为您可能不会每秒生成数千张优惠券。$res
strlen($chars)-1
试试这个:
substr(base_convert(sha1(uniqid(mt_rand())), 16, 36), 0, 10)