PHP生成随机用户名和密码的实现代码


Posted in PHP onFebruary 27, 2013

有时候我们需要在应用程序中使用随机生成用户名和密码,这样可以大大提高应用程序的安全,在PHP中生成随机用户名和密码可以使用 mt_rand 函数或者是 rand 函数, rand 函数在验证码中的应用多一些,而生成长字符的随机码一般都需要 mt_rand 函数。

    使用PHP生成随机数可以应用在许多地方,比如可以设计程序的随机密码、模拟掷骰子游戏的应用程序、石头剪子布游戏应用程序等等。

    下面是PHP生成随机数的两个函数方法:

//自动为用户随机生成用户名(长度6-13) 
        function create_password($pw_length = 4){
            $randpwd = '';
            for ($i = 0; $i < $pw_length; $i++){
                $randpwd .= chr(mt_rand(33, 126));
            }
            return $randpwd;
        }
        function generate_username( $length = 6 ) {
            // 密码字符集,可任意添加你需要的字符 
            $chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()-_ []{}<>~`+=,.;:/?|';
            $password = '';
            for ( $i = 0; $i < $length; $i++ )
            {
                // 这里提供两种字符获取方式
                // 第一种是使用substr 截取$chars中的任意一位字符;
                // 第二种是取字符数组$chars 的任意元素
                // $password .= substr($chars, mt_rand(0, strlen($chars) - 1), 1);
                $password .= $chars[ mt_rand(0, strlen($chars) - 1) ];
            }
            return $password;
        }
        // 调用该函数 
        $userId = 'user'.generate_username(6);
        $pwd = create_password(9);
PHP 相关文章推荐
PHP中10个不常见却非常有用的函数
Mar 21 PHP
PHP 编写大型网站问题集
May 07 PHP
PHP中集成PayPal标准支付的实现方法分享
Feb 06 PHP
PHP生成唯一的促销/优惠/折扣码(附源码)
Dec 28 PHP
PHP下通过QRCode类库创建中间带网站LOGO的二维码
Jul 12 PHP
CI框架中site_url()和base_url()的区别
Jan 07 PHP
PHP函数引用返回的实例详解
Sep 11 PHP
SCP远程VPS快速搬家和WDCP升级php5.3安装memcached和eaccelerator教程
Jul 27 PHP
PHP排序算法之快速排序(Quick Sort)及其优化算法详解
Apr 21 PHP
php微信公众号开发之快递查询
Oct 20 PHP
掌握PHP垃圾回收机制详解
Mar 13 PHP
PHP解决高并发问题
Apr 01 PHP
PHP人民币金额数字转中文大写的函数代码
Feb 27 #PHP
PHP和.net中des加解密的实现方法
Feb 27 #PHP
php和js如何通过json互相传递数据相关问题探讨
Feb 26 #PHP
php数组的概述及分类与声明代码演示
Feb 26 #PHP
浅谈apache和nginx的rewrite的区别
Feb 22 #PHP
php并发对MYSQL造成压力的解决方法
Feb 21 #PHP
php连接mssql数据库的几种方法
Feb 21 #PHP
You might like
php REMOTE_ADDR之获取访客IP的代码
2008/04/22 PHP
php 各种应用乱码问题的解决方法
2010/05/09 PHP
Jquery遍历Json数据的方法
2015/04/20 Javascript
jQuery检查事件是否触发的方法
2015/06/26 Javascript
使用impress.js制作幻灯片
2015/09/09 Javascript
浅析BootStrap模态框的使用(经典)
2016/04/29 Javascript
详解JavaScript对象类型
2016/06/16 Javascript
js时间戳与日期格式之间转换详解
2017/12/11 Javascript
微信小程序scroll-view组件实现滚动动画
2018/01/31 Javascript
基于Vuejs的搜索匹配功能实现方法
2018/03/03 Javascript
AngularJS 多指令Scope问题的解决
2018/10/25 Javascript
element ui table(表格)实现点击一行展开功能
2018/12/04 Javascript
Vue基于vuex、axios拦截器实现loading效果及axios的安装配置
2019/04/26 Javascript
vue.js实现点击图标放大离开时缩小的代码
2021/01/27 Vue.js
[46:40]VGJ.T vs Winstrike 2018国际邀请赛小组赛BO2 第一场 8.17
2018/08/20 DOTA
python写的一个文本编辑器
2014/01/23 Python
python 获取网页编码方式实现代码
2017/03/11 Python
python3 shelve模块的详解
2017/07/08 Python
Python实现快速排序的方法详解
2019/10/25 Python
pygame实现烟雨蒙蒙下彩虹雨
2019/11/11 Python
Python+Kepler.gl实现时间轮播地图过程解析
2020/07/20 Python
Python进行统计建模
2020/08/10 Python
python实现扫雷游戏的示例
2020/10/20 Python
python中判断数字是否为质数的实例讲解
2020/12/06 Python
用python批量移动文件
2021/01/14 Python
Oroton中国官网:澳洲知名奢侈配饰品牌
2017/03/26 全球购物
台湾母婴用品购物网站:Infant婴之房
2018/06/15 全球购物
英国玛莎百货美国官网:Marks & Spencer美国
2018/11/06 全球购物
数字天堂软件测试面试题
2012/12/23 面试题
审核会计岗位职责
2013/11/08 职场文书
暑期实践思想汇报
2014/01/06 职场文书
运动会加油稿50字
2015/07/21 职场文书
浅谈redis五大数据结构和使用场景
2021/04/12 Redis
ORACLE数据库应用开发的三十个注意事项
2021/06/07 Oracle
教你使用一行Python代码玩遍童年的小游戏
2021/08/23 Python
一篇文章弄清楚Ajax请求的五个步骤
2022/03/17 Javascript