PHP,生成带格式的字符串,检查SQL db?

我正在尝试使用PHP作为在网页中处理此问题的方法,我的典型语言是java,因此我不熟悉如何对产品密钥进行此操作.

这基本上就是这个过程:

1. Generate random string with format XX-XXXX-XXXX-XXX a mix of numbers and letters.
2. Check if it already exists in an sql database
3. If exists, generate another one and repeat?

那我怎么用PHP做这个呢?
请解释一下我需要做什么以及最好的方法.

解决方法:

从以下函数生成随机字符串.

<?PHP
function randomString() {
    $alphabet = "abcdefghijklmnopqrstuwxyzABCDEFGHIJKLMnopQRSTUWXYZ0123456789";
    $pass = array(); //remember to declare $pass as an array
    $alphaLength = strlen($alphabet) - 1; //put the length -1 in cache
    $array_lengths = array(2,4,4,3);
    foreach($array_lengths as $v){
      for ($i = 0; $i < $v; $i++) {
        $n = rand(0, $alphaLength);
        $pass[] = $alphabet[$n];
      }
      $pass[] = '-';
    }
    return rtrim(implode($pass),'-'); //turn the array into a string
}

echo randomString();

?>

sql
请创建唯一键字段并使用ON DUPLICATE KEY查询插入/更新数据

DEMO

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...