PHP 生成唯一的字符串

发布于 2024-11-17 08:43:55 字数 121 浏览 0 评论 0原文

我在表中有一个 ID 列,用于存储行 ID 号(自动递增),例如 1、2、3。我想生成一个随机且唯一的字符串,该字符串只能包含数字、字母、破折号 (-) 和下划线(_)。字符串长度为4-6,且唯一。有人可以帮我如何生成吗?谢谢。

I have an ID column in a table which stores the row ID number (auto increment), For example 1, 2, 3. I want to generated a random and unique string which could contain only numbers, alphabets and dash (-) and underscore (_). The length of string should be 4-6, and it should be unique. Can someone help me how to generate? thanks.

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

简单气质女生网名 2024-11-24 08:43:55

使用这个 - base_convert(mt_rand(0x1D39D3E06400000, 0x41C21CB8E0FFFFFF), 10, 36),但根据数据库检查新值。

Use this - base_convert(mt_rand(0x1D39D3E06400000, 0x41C21CB8E0FFFFFF), 10, 36), but check new value against db.

断肠人 2024-11-24 08:43:55
function random_gen($length)
{
  $random= "";
  srand((double)microtime()*1000000);
  $char_list = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
  $char_list .= "abcdefghijklmnopqrstuvwxyz";
  $char_list .= "1234567890-_";
  // Add the special characters to $char_list if needed

  for($i = 0; $i < $length; $i++)
  {
    $random .= substr($char_list,(rand()%(strlen($char_list))), 1);
  }
  return $random;
}

$random_string = random_gen(6); //This will return a random 6 character string

上面的函数将生成唯一的字符串

function random_gen($length)
{
  $random= "";
  srand((double)microtime()*1000000);
  $char_list = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
  $char_list .= "abcdefghijklmnopqrstuvwxyz";
  $char_list .= "1234567890-_";
  // Add the special characters to $char_list if needed

  for($i = 0; $i < $length; $i++)
  {
    $random .= substr($char_list,(rand()%(strlen($char_list))), 1);
  }
  return $random;
}

$random_string = random_gen(6); //This will return a random 6 character string

Above function will generate the unique string

风向决定发型 2024-11-24 08:43:55

试试这个

function genRandomString($length) {
   $characters = ’0123456789abcdefghijklmnopqrstuvwxyz-_’;
   $string = ”;    
   for ($p = 0; $p < $length; $p++) {
      $string .= $characters[mt_rand(0, strlen($characters))];
    }
   return $string;
}

用你想要的长度调用函数

Try this

function genRandomString($length) {
   $characters = ’0123456789abcdefghijklmnopqrstuvwxyz-_’;
   $string = ”;    
   for ($p = 0; $p < $length; $p++) {
      $string .= $characters[mt_rand(0, strlen($characters))];
    }
   return $string;
}

Call the function with the length you want

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文