多个密钥生成

问题描述:

我有密钥生成的代码。多个密钥生成

<?php 
function KeyGen() 
{ 
$keylength = 20; 
$key = md5(mktime()); 
$new_key = ''; 
for($i=1; $i <= $keylength; $i ++) 
    { 
      $new_key .= $key[$i]; 
      if ($i%5==0 && $i != $keylength) $new_key.='-'; 
    } 
return strtoupper($new_key); 
} 
echo KeyGen(); 
?> 

我想生成20个密钥。我没有得到如何去做。

+0

所以调用函数的20倍 – 2013-03-11 09:51:06

+0

它给予相同的密钥为20倍 – user2130915 2013-03-11 09:52:54

+0

好那么就不要使用'MD5(mktime())'总是使用相同的当前时间来生成密钥。例如有一个'mt_rand()'函数。 – mario 2013-03-11 09:53:46

<?php 
function KeyGen() 
{ 
$keylength = 20; 
$key = md5(strtotime("now").rand()); 
$new_key = ''; 
for($i=1; $i <= $keylength; $i ++) 
    { 
     $new_key .= $key[$i]; 
     if ($i%5==0 && $i != $keylength) $new_key.='-'; 
    } 
return strtoupper($new_key); 
} 
$new_key= KeyGen(); 
echo $new_key; 
?> 

调用的函数,你应该拿到钥匙

+0

我想要一套钥匙。我尝试过,但它只给我一个关键作为输出。 – user2130915 2013-03-11 09:50:46

+0

尝试strtotime(“现在”)insk的mktime() – Shin 2013-03-11 09:58:26

+0

我用mt_rand()而不是mktime()。其工作正常 – user2130915 2013-03-11 09:59:45