php - 生成劵码

/*
 * 生成劵码
 * $nums 生成多少个劵码
 * $codelength 劵码长度
 * $format 劵码前缀名(不包含在劵码长度内)
 * $type 返回类型 json array
 */
function get_code($nums = 6 ,$codelength = 6 ,$format = '' ,$type = 'array' )
{
    $mcode = '1234567890abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
    $mcode_len = strlen($mcode);
    $rs = array();

    for($i=0;$i<$nums;)
    {
        
        $code = '';
        for($j=0;$j<$codelength;$j++)
        {
            $str_len = rand(0,$mcode_len-1);
            $str = substr($mcode,$str_len,1);
            $code .=$str;
        }
        
        $d = in_array($code,$rs);

        if(!$d){
            $rs[] = $format.$code;
            $i++;
        }
    }
    
    if($type =='array')
        return $rs;
    else
        return json_encode($rs);

}


#用于调试

function pc($data)

{

    if(is_array($data))

    {

          echo '<pre>';

          print_r($data);

          echo '<pre>';

    }

    else

    {

         echo $data;

    }

}


pc(get_code());

pc(get_code(10,10,'-N','json'));

#自己写的代码 有问题可以联系我,我会加以修改


  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值