随机生成难点是在于如何避免碰撞,有人说用md5,GUID这些机制啊,当然可以,但是做为账号,看着有乱,而且生成位数也过长。
本方法只需要解决1秒内的并发碰撞就可以,因为固定头部采用的是unixtime时间,精确到秒,超过1秒,这个头部的时间肯定变化了。同时本方法也可以用户随机订单编号的生成。
测试条件是用循环创建1万个随机账号(毫秒级),0碰撞,10万个大约有0-3个碰撞。应该没有哪个互联网公司会在瞬间同时创建这么多账号,所以足够应付数十亿PV这么大的规模了。
~~~.java
// 自动生成随机用户名
// 测试,循环创建1万个随机账号,0碰撞,10万大约0-3个碰撞,足够应付未来数十亿级PV
private function genUserNumber()
{
$chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";
$username = "";
for ( $i = 0; $i < 6; $i++ )
{
$username .= $chars[mt_rand(0, strlen($chars))];
}
return strtoupper(base_convert(time() - 1420070400, 10, 36)).$username;
}
~~~
转自:http://www.yinqisen.cn/blog-674.html
分享到:
相关推荐
经过整理过的用户昵称
综上所述,PHP在生成随机用户名和密码方面提供了强大的支持,开发者可以利用内置的随机数函数和字符处理功能来高效实现这一需求。需要注意的是,生成的随机用户名和密码必须在应用逻辑中被适当地处理和存储,以确保...
3. **生成随机令牌**:在确认用户身份后,系统会生成一个唯一的随机令牌,并将其存储在会话或者数据库中,这个令牌将在后续的密码重置过程中作为验证凭据。 4. **发送重置链接**:系统会将包含令牌的重置链接通过...
PHP可以使用GD库来生成包含随机字符的图片,字符颜色、背景色、线条干扰等元素都可以随机调整,以增加识别难度。用户提交的验证码会与服务器端保存的原始验证码进行比对,一致则验证通过。 接下来,处理用户提交的...
邮件内容应包含一个唯一的激活码,这个激活码通常与用户的ID或随机生成的哈希值关联,存储在数据库中。 邮件中的激活链接一般包含一个URL,如`http://example.com/active.php?code=123456`,其中`code`参数就是激活...
这样的工具箱通常包含但不限于加密解密工具、格式转换器、编码解码器、代码高亮展示、二维码生成器、随机密码生成等功能。 PHP作为服务器端脚本语言,被广泛用于Web开发,其语法简洁、学习曲线平缓,且支持多种...
4. **安装过程**:`install.php`可能是用于系统初始化和设置管理员账号的页面,这通常包括数据库连接配置、管理员信息输入、数据库表的创建等步骤。 5. **注册流程**:`reg.php`文件用于用户注册,可能包含用户名、...
1. **用户注册**:用户创建账号时,系统会生成一个随机的密保卡,并将其关联到用户的账户。 2. **密保卡存储**:密保卡信息会被加密存储在数据库中,确保即使数据库被泄露,密保卡数据也无法被轻易解密。 3. **登录...
在【压缩包子文件的文件名称列表】中,由于只有一个文件名 "132678301039301218" 提供,这通常可能是一个随机生成的临时文件名,用于存储整个AKCMS系统的源代码、配置文件、模板、数据库脚本、文档或其他相关资源。...
2. **出码生成**:使用算法生成唯一且不可预测的码,可以是随机字符串或特定格式的编码。 3. **码的分配与管理**:系统需管理码的分配逻辑,例如根据用户行为、时间、库存等因素动态发放。 4. **接口设计**:提供...
【压缩包子文件的文件名称列表】: 132699569527453003 这个文件名看起来像是一个随机生成的数字序列,很可能代表的是源码包中某个特定文件的ID或者时间戳。在解压后,这通常包括如HTML、CSS、JavaScript、PHP脚本、...
压缩包内的文件"132699092602498141"可能是模板的主文件或者是一个随机生成的临时文件名,由于没有具体文件类型信息,无法详细解读其内容。通常情况下,这样的文件可能包含了整个模板的源码、图片资源、样式表、脚本...
PHP版单点登录实现方案主要讲述了如何通过PHP语言实现基于WebService、Session和Cookie技术的单点登录(SSO)系统。单点登录是企业及网络业务中用户处理的一个重要组成部分,它允许用户在多个相互信任的应用系统之间...
4. **SEO优化**:提供关键词设置、静态页面生成等功能,有助于提高搜索引擎排名。 5. **权限管理**:具备会员系统和权限控制,可以设置不同角色的访问和操作权限。 6. **插件扩展**:拥有丰富的第三方插件和模块,可...
- 登录成功时,将用户名存储到session中,并生成一个随机的保护码(如`mt_rand(0,100000)`产生的数字),以防止直接访问“登录成功”页面。 - 登录失败或成功后,记得关闭数据库连接。 ### 四、PHP与MySQL操作 ...
3. **考试创建与发布**:设定考试时间、时长、分数规则,自定义考试流程,支持随机组卷或固定试卷。 4. **自动评分**:系统根据设定的评分规则自动计算分数,减少人工阅卷的工作量。 5. **成绩统计与分析**:生成...
1. **CDK生成**:随机生成具有唯一性的CDK,并关联特定的奖励内容。 2. **CDK验证**:用户输入CDK后,服务器端需要验证其有效性,防止已被使用或非法的CDK。 3. **CDK兑换**:成功验证后,将奖励内容绑定到用户...
12.4 PHP动态生成JavaScript代码 193 12.4.1 多行输出 193 12.4.2 单行输出 194 12.4.3 PHP动态生成JavaScript的 12.4.3 实例——进度条 194 12.5 在JavaScript中调用PHP程序 196 12.5.1 页面的跳转 196 12.5.2 隐性...
通常,`rnd`字段的值是随机字符串,更新时应保持一致。 如果你不熟悉数据库操作,也可以通过织梦提供的FTP访问文件来重置密码: 1. **编辑配置文件**:通过FTP客户端连接到服务器,找到织梦的根目录,打开`include...
实现这一功能可能涉及生成随机ID或使用特定的匿名机制,同时也要考虑如何处理实名表白的请求。 3. **表白发布**:用户可以提交表白内容,包括文字、图片甚至音频。PHP后端需要处理这些数据的上传和存储,通常会使用...