genToken- Php file

 1  <?php
 2 
 3  
 4 
 5  public function genToken($len = 32, $md5 = true) {
 6         # Seed random number generator
 7         # Only needed for PHP versions prior to 4.2
 8         mt_srand((double) microtime() * 1000000);
 9         # Array of characters, adjust as desired
10         $chars = array(
11             'Q', '@', '8', 'y', '%', '^', '5', 'Z', '(', 'G', '_', 'O', '`',
12             'S', '-', 'N', '<', 'D', '{', '}', '[', ']', 'h', ';', 'W', '.',
13             '/', '|', ':', '1', 'E', 'L', '4', '&', '6', '7', '#', '9', 'a',
14             'A', 'b', 'B', '~', 'C', 'd', '>', 'e', '2', 'f', 'P', 'g', ')',
15             '?', 'H', 'i', 'X', 'U', 'J', 'k', 'r', 'l', '3', 't', 'M', 'n',
16             '=', 'o', '+', 'p', 'F', 'q', '!', 'K', 'R', 's', 'c', 'm', 'T',
17             'v', 'j', 'u', 'V', 'w', ',', 'x', 'I', '$', 'Y', 'z', '*'
18         );
19         # Array indice friendly number of chars;
20         $numChars = count($chars) - 1;
21         $token = '';
22         # Create random token at the specified length
23         for ($i = 0; $i < $len; $i++)
24             $token .= $chars[mt_rand(0, $numChars)];
25         # Should token be run through md5?
26         if ($md5) {
27             # Number of 32 char chunks
28             $chunks = ceil(strlen($token) / 32);
29             $md5token = '';
30             # Run each chunk through md5
31             for ($i = 1; $i <= $chunks; $i++)
32                 $md5token .= md5(substr($token, $i * 32 - 32, 32));
33             # Trim the token
34             $token = substr($md5token, 0, $len);
35         } 
36         
37         return $token;
38     }
39     

 

转载于:https://www.cnblogs.com/it80/p/4919906.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值