我是靠谱客的博主 端庄电话,这篇文章主要介绍随机生成6位会员号,现在分享给大家,希望可以做个参考。

复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
/* * 根据请求生成会员号 * 利用microtime()截取后六位生成会员号Number,时间戳后六位不会重复, * 如果存在则重新生成在查询,直到唯一为止,并写入user表与number表 * */ function createSingleNumber() { $token = I('token'); $this->auth($token); try{ $user_id = get_user_id(USER_ACCOUNT); //获取用户user_id $userData = D('User')->where(['id'=>$user_id])->find(); if(!empty($userData['number'])) throw new Exception('你的爱豆号为'.$userData['number'],1); //否则继续进行生成与验证 $randNumber = microtime(); $userNumber = rand(11,99).substr($randNumber,-4); $check = $this->unique($userNumber);//计算是几连号,return 2 为2连号 if($check >= 3) //检查是否3位相连,如果是,则生成任意随机数代替 $userNumber = mt_rand(111111,999999); $doubleCheck = D('User')->where(['number'=>$userNumber])->find(); if(!empty($doubleCheck)) //再次生成爱豆号,直到不重复 throw new Exception('再次请求生成',2018); exit(json_encode(['code'=>200,'data'=>$userNumber,'message'=>'ok'])); }catch(Exception $e){ $result['code'] = $e->getCode(); $result['message'] = $e->getMessage(); exit(json_encode($result)); } } function unique($num){ //使用正则检测连号数量 preg_match_all("/(d)\1+/",$num,$match); rsort($match[0],SORT_NUMERIC); return strlen($match[0][0])?:1; } 复制代码

最后

以上就是端庄电话最近收集整理的关于随机生成6位会员号的全部内容,更多相关随机生成6位会员号内容请搜索靠谱客的其他文章。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(70)

评论列表共有 0 条评论

立即
投稿
返回
顶部