分享

生成优惠码

 丶平上 2016-06-16
/**
     * 生成vip激活码
     * @param int $nums             生成多少个优惠码
     * @param array $exist_array     排除指定数组中的优惠码
     * @param int $code_length         生成优惠码的长度
     * @param int $prefix              生成指定前缀
     * @return array                 返回优惠码数组
     */
    public function generateCode( $nums,$exist_array=‘‘,$code_length = 6,$prefix = ‘‘ ) {
    
        $characters = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnpqrstuvwxyz";
        $promotion_codes = array();//这个数组用来接收生成的优惠码
    
        for($j = 0 ; $j < $nums; $j++) {
                
            $code = ‘‘;
                
            for ($i = 0; $i < $code_length; $i++) {
    
                $code .= $characters[mt_rand(0, strlen($characters)-1)];
    
            }
                
            //如果生成的4位随机数不再我们定义的$promotion_codes数组里面
            if( !in_array($code,$promotion_codes) ) {
    
                if( is_array($exist_array) ) {
                        
                    if( !in_array($code,$exist_array) ) {//排除已经使用的优惠码
    
                        $promotion_codes[$j] = $prefix.$code; //将生成的新优惠码赋值给promotion_codes数组
    
                    } else {
    
                        $j--;
    
                    }
                        
                } else {
                        
                    $promotion_codes[$j] = $prefix.$code;//将优惠码赋值给数组
                        
                }
    
            } else {
                $j--;
            }
        }
    
        return $promotion_codes;
    }

    本站是提供个人知识管理的网络存储空间,所有内容均由用户发布,不代表本站观点。请注意甄别内容中的联系方式、诱导购买等信息,谨防诈骗。如发现有害或侵权内容,请点击一键举报。
    转藏 分享 献花(0

    0条评论

    发表

    请遵守用户 评论公约

    类似文章 更多