对于电子商务网站,我想生成一个随机优惠券代码,该代码看起来比随机生成的价值更好.它应该是一个可读的优惠券代码,全部为大写,没有特殊字符,只有字母(AZ)和数字(0-9).
由于人们可能正在阅读它/在其他地方打印它,我们需要使它成为一个简单的通信值,也许8到10个字符长.
也许是这样的事情,
AHS3DJ6BW
B83JS1HSK
Run Code Online (Sandbox Code Playgroud)
(我打字,所以它不是那么随意)
Art*_*cto 41
$chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
$res = "";
for ($i = 0; $i < 10; $i++) {
$res .= $chars[mt_rand(0, strlen($chars)-1)];
}
Run Code Online (Sandbox Code Playgroud)
您可以通过预先分配$res字符串并缓存结果来优化它strlen($chars)-1.这留给读者一个练习,因为你可能不会每秒产生数千张优惠券.
Gum*_*mbo 20
试试这个:
substr(base_convert(sha1(uniqid(mt_rand())), 16, 36), 0, 10)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
46109 次 |
| 最近记录: |