php 邀请码算法,php生成五位数邀请码
本篇文章给大家分享的内容是php生成五位数邀请码,有着一定的参考价值,有需要的朋友可以参考一下
model/**
* 生成邀请码
* @param $uid
* @return string
*/
public function initcode() {
$code = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ';
$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 = '0123456789ABCDEFGHIJKLMNOPQRSTUV',
$d = '',
$f = 0;
$f < 5;
$g = ord( $a[ $f ] ),
$d .= $s[ ( $g ^ ord( $a[ $f + 8 ] ) ) - $g & 0x1F ],
$f++
);
return $d;
}
/**
* 是否重复
*/
public function recode($code) {
if ($this->where('code='.$code)->find()) {
return false;
}
return true;
}
action/**
* 我的邀请码
* @author zhangfeng
*/
public function mycode() {
$model = M('Usercode');
$uid = ($_GET['uid']);
$code = $model->is_code($uid);
$this->assign('code', $code);
if (!$code) {
$code = $this->getcode($model, $uid);
$res = $model->savecode($uid, $code);
if ($res) {
$this->assign('code', $code);
} else {
$this->assign('code', '邀请码生成失败!,错误:'.$model->getError());
}
}
$this->display();
}
/**
* 递归函数获取绝对不重复邀请码
* @author zhangfeng
* @param $model
* @param $uid
* @return mixed
*/
private function getcode($model, $uid) {
$code = $model->initcode($uid);
if ($model->recode($code)) {
return $code;
} else {
while(true) {
$this->getcode($model, $uid);
}
}
}
相关推荐:
php 邀请码算法,php生成五位数邀请码相关推荐
- PHP二维码在线制作生成系统源码 无需数据库 带logo图标
简介: PHP二维码在线制作生成系统源码 无需数据库 带logo图标 网盘下载地址: http://kekewl.net/Myae89V9DX00 图片:
- 二维码相关---java生成二维码名片,并且自动保存到手机通讯录中...
二维码相关---java生成二维码名片,并且自动保存到手机通讯录中... 技术qq交流群:JavaDream:251572072 1.首先介绍一个api. Zxing是Google提供的关于条码 ...
- 二维码接口B生成二维码
二维码接口B生成二维码 一.将小程序发布 二.获取access_token 代码如下: getaccess() {var that = this;wx.request({url: 'https://a ...
- 二维码相关---java生成二维码名片,而且自己主动保存到手机通讯录中...
版权声明:本文为博主原创文章,未经博主credreamer 同意不得转载 违者追究法律责任. https://blog.csdn.net/lidew521/article/details/244418 ...
- 二维码插件qrcode生成二维码信息
文章目录 二维码插件qrcode: JS逻辑实现: html展示与下载调用部分: 图片信息展示如下: 二维码插件qrcode: JS逻辑实现: <!-- 二维码插件,qrcode.min.js下 ...
- js 生成二维码_QRcode.js 生成二维码
github官方文档指路:https://github.com/soldair/node-qrcode#options QRcode方法介绍: 这里只介绍后三种常用方法的使用: 1.toCanvas ...
- 一连串数字怎么转换成二维码?数字生成二维码如何制作?
当我们使用二维码内容做成数字时该如何制作呢,比如做成标签码,序号码,号码牌等等,都可以使用数字二维码来展示,那么如何操作才能将一连串数字做成二维码呢?下面给大家分享一下数字静态二维码和数字微信活码的制 ...
- 利用python生成二维码 以及批量生成二维码
常见的两种简单生成二维码方法,目测均是很好用的 1.MyQR 要求是python3 ,并且二维码上的内容不支持中文 #1.生成普通二维码#在程序中导入MyQR包下的模板myqr,其中word参数接收 ...
- JS识别二维码、JS生成二维码
最近的项目中使用到了识别二维码和生成二维码,都是用JS生成的,应用在了移动端,在网上搜罗了许多进行验证,下面是我在项目中应用的: 识别二维码 1.第一种,压缩包:https://pan.baidu.c ...
最新文章
- 编译报错field has incomplete type
- 数据从程序中传入到form中
- springboot websocket_SpringBoot 集成 WebSocket 实现前后端消息互传
- GradSearchCv 自定义验证集
- 修改网站首页批处理_几个神奇的批处理,万事不求人!
- python里turtle.circle什么意思_Python turtle.circle方法代碼示例
- 存储过程中用到的年,月,周的函数
- 对于react-redux的理解
- 【项目篇】Android团队项目开发之统一代码规范
- php和java的一些比较
- vue 实现文本的拖拽_基于Vue实现拖拽效果
- Redis 官方可视化工具,高颜值,功能太强大!
- python自动化怎么发微信_在python中使用itchat发送微信消息
- android云新消息接收者全局,消息推送之百度云推送Android集成与用法(示例代码)...
- python_使用需要的气象台站提取气象数据
- 金士顿固态硬盘修复,慧荣SM2246EN开卡记录,附量产工具
- wifi上行下行速度测试_怎么测试上行速度,直观的测试 WiFi上下行宽带
- tekla钢筋组弯钩方向
- Linux 功能强大的 路由器,一款功能强大的路由器系统-软路由-RouterOS
- 经典黑白搭配 现代简约风格设计美学精神
热门文章
- 错误解决:site-packages/mmcv/_ext.cpython-37m-x86_64-linux-gnu.so: undefined symbol: _ZN2at5sliceERK
- bat批量提取word文件名
- LENOVO ThinkServer RD630 服务器
- MySQL登录时出现 Access denied for user 'root'@'xxx.xxx.xxx.xxx' (using password: YES) 的原因及解决办法
- 神经网络原理的简单介绍,神经网络的基本原理
- DNF中伤害类型综合计算方式以及相关Excel文档
- C++打怪游戏#2 游戏制作实录
- 用了那么久的手机,你还不知道这样屏蔽广告?操作只要1步
- 关于 CPU 推测执行漏洞,您需要知道这些
- 怎样复制虾米音乐html,来支招:怎样把虾米歌单导入网易云音乐