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多用户计数器代码
Mar 11 PHP
备份mysql数据库的php代码(一个表一个文件)
May 28 PHP
简单的PHP多图上传小程序代码
Jul 17 PHP
深入解析phpCB批量转换的代码示例
Jun 27 PHP
PHP数组遍历知识汇总(包含遍历方法、数组指针操作函数、数组遍历测速)
Jul 05 PHP
php中字符串和正则表达式详解
Oct 23 PHP
php制作文本式留言板
Mar 18 PHP
phpcms手机内容页面添加上一篇和下一篇
Jun 05 PHP
php实现将数据做成json的格式给前端使用
Aug 21 PHP
PHP去除空数组且数组键名重置的讲解
Feb 28 PHP
PHP+mysql防止SQL注入的方法小结
Apr 27 PHP
php获取是星期几的的一些常用姿势
Dec 15 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的ob_start() 控制您的浏览器cache
2009/08/03 PHP
php制作中间带自己定义图片二维码的方法
2014/01/27 PHP
img的onload的另类用法
2008/01/10 Javascript
避免回车键导致的页面无意义刷新的解决方法
2011/04/12 Javascript
JavaScript 函数参数是传值(byVal)还是传址(byRef) 分享
2013/07/02 Javascript
jquery js 重置表单 reset()具体实现代码
2013/08/05 Javascript
js判读浏览器是否支持html5的canvas的代码
2013/11/18 Javascript
原生js仿jq判断当前浏览器是否为ie,精确到ie6~8
2014/08/30 Javascript
Jquery树插件zTree用法入门教程
2015/02/17 Javascript
深入浅析JavaScript中的scrollTop
2016/07/11 Javascript
微信小程序 自己制作小组件实例详解
2016/12/22 Javascript
详解vue-Resource(与后端数据交互)
2017/01/16 Javascript
微信小程序 登陆流程详细介绍
2017/01/17 Javascript
BootstrapTable请求数据时设置超时(timeout)的方法
2017/01/22 Javascript
详解angularjs4部署文件过大解决过程
2018/12/05 Javascript
使用httplib模块来制作Python下HTTP客户端的方法
2015/06/19 Python
python中range()与xrange()用法分析
2016/09/21 Python
python查询mysql,返回json的实例
2018/03/26 Python
python+opencv实现霍夫变换检测直线
2020/10/23 Python
Python内置random模块生成随机数的方法
2019/05/31 Python
Python整数与Numpy数据溢出问题解决
2019/09/11 Python
python3图片文件批量重命名处理
2019/10/31 Python
python二分法查找算法实现方法【递归与非递归】
2019/12/06 Python
如何使用python传入不确定个数参数
2020/02/18 Python
Python多线程操作之互斥锁、递归锁、信号量、事件实例详解
2020/03/24 Python
对python中各个response的使用说明
2020/03/28 Python
django正续或者倒序查库实例
2020/05/19 Python
python如何输出反斜杠
2020/06/18 Python
用Python 执行cmd命令
2020/12/18 Python
Stührling手表官方网站:男女高品质时尚手表的领先零售商
2021/01/07 全球购物
Kingsoft金山公司C/C++笔试题
2016/05/10 面试题
机械电子工程专业自荐书
2014/06/10 职场文书
党支部创先争优承诺书
2014/08/30 职场文书
新店开业策划方案怎么书写?
2019/07/05 职场文书
24年收藏2000多部退役军用电台
2022/02/18 无线电
Android自定义ScrollView实现阻尼回弹
2022/04/01 Java/Android