如何使用PHP / MySQL基于表的行创建特定大小的随机数?

时间:2013-03-11 06:56:10

标签: php mysql

我想为数据库表中的每一行创建一个特定大小的随机“键”。例如,对于“id”或行(自动递增ID)“20”,列“key”将具有“xEd456”,而对于行21,它将是例如“0”。 “rYU875”。但是,我还想确保表中没有重复的“密钥”。我更喜欢6-char“key”。我如何实现这一目标?

1 个答案:

答案 0 :(得分:0)

这意味着您需要一个字母数字键,请参阅代码

while(true)
  {
  $str="";
  for($i=0;$i<6;$i++)
    {
    $rnd=rand(1,16);
    if(intval(fmod($rnd, 2)))
    $a=rand(48,57);
    else
    $a=rand(65,90);
    $str .= chr($a);
    }
  // skipping the mysql connection functions
  $sql=mysql_query(“select user_id from user_master_table where user_id_alias='".$str."'");
  $rs=mysql_fetch_array($sql);
  if($rs["user_id"]=="")
    break;
  }

您可以自由更改循环值和随机数范围。