php 生成邀请码

/* phpalapi 接口  生成邀请码 */
public function createCode(){
$code = 'ABCDEFGHIJKLMNPQRSTUVWXYZ';
$rand = $code[rand(0,25)]
.strtoupper(dechex(date('m')))
.date('d').substr(time(),-5)
.substr(microtime(),2,5)
.sprintf('%02d',rand(0,99));
for(
$a = md5( $rand, true ),
$s = '123456789ABCDEFGHIJKLMNPQRSTUV',
$d = '',
$f = 0;
$f < 6;
$g = ord( $a[ $f ] ),
$d .= $s[ ( $g ^ ord( $a[ $f + 6 ] ) ) - $g & 0x1F ],
$f++
);

if(mb_strlen($d)==6){

//查询数据库是否存在邀请码

$oneinfo=DI()->notorm->users
->select("id")
->where('code=?',$d)
->fetchOne();
if(!$oneinfo){
return $d;
}
}
$d=$this->createCode();
return $d;

}


/* php代码 生成邀请码 */
function createCode(){
$code = 'ABCDEFGHIJKLMNPQRSTUVWXYZ';
$rand = $code[rand(0,25)]
.strtoupper(dechex(date('m')))
.date('d').substr(time(),-5)
.substr(microtime(),2,5)
.sprintf('%02d',rand(0,99));
for(
$a = md5( $rand, true ),
$s = '123456789ABCDEFGHIJKLMNPQRSTUV',
$d = '',
$f = 0;
$f < 6;
$g = ord( $a[ $f ] ),
$d .= $s[ ( $g ^ ord( $a[ $f + 6 ] ) ) - $g & 0x1F ],
$f++
);
if(mb_strlen($d)==6){
$oneinfo=M("users")->field("id")->where("code='{$d}'")->find();
if(!$oneinfo){
return $d;
}
}

   
        $d=createCode();
return $d;
}


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值