位置: 编程技术 - 正文
推荐整理分享PHP生成随机密码方法汇总(php生成随机数字),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:php生成随机6位数,php生成随机密码的函数,php生成随机6位数,php生成随机字母数字代码,php生成随机6位数,php生成随机密码的代码,php生成随机密码的代码,php生成随机密码的函数,内容如对您有帮助,希望把文章链接给更多的朋友!
使用PHP开发应用程序,尤其是网站程序,常常需要生成随机密码,如用户注册生成随机密码,用户重置密码也需要生成一个随机的密码。随机密码也就是一串固定长度的字符串,这里我收集整理了几种生成随机字符串的方法,以供大家参考。
方法一:
1、在 ? 中生成一个随机整数,如 ,
2、将 转换成对应的ASCII码字符,如 对应 #
3、重复以上 1、2 步骤 n 次,连接成 n 位的密码
该算法主要用到了两个函数,mt_rand ( int $min , int $max )函数用于生成随机整数,其中 $min ? $max 为 ASCII 码的范围,这里取 - ,可以根据需要调整范围,如ASCII码表中 ? 位对应 a ? z 的英文字母,具体可参考 ASCII码表; chr ( int $ascii )函数用于将对应整数 $ascii 转换成对应的字符。
// 调用该函数,传递长度参数$pw_length = 6
方法二:
1、预置一个的字符串 $chars ,包括 a ? z,A ? Z,0 ? 9,以及一些特殊字符
2、在 $chars 字符串中随机取一个字符
3、重复第二步 n 次,可得长度为 n 的密码
方法三:
1、预置一个的字符数组 $chars ,包括 a ? z,A ? Z,0 ? 9,以及一些特殊字符
2、通过array_rand()从数组 $chars 中随机选出 $length 个元素
3、根据已获取的键名数组 $keys,从数组 $chars 取出字符拼接字符串。该方法的缺点是相同的字符不会重复取。
方法四:
本方法是本文被蓝色理想转载后,一名网友提供的一个新方法,算法简单,代码简短,只是因为md5()函数的返回值的缘故,生成的密码只包括字母和数字,不过也算是一个不错的方法。算法思想:
1、time() 获取当前的 Unix 时间戳
2、将第一步获取的时间戳进行 md5() 加密
3、将第二步加密的结果,截取 n 位即得想要的密码
时间效率对比
我们使用以下PHP代码,计算上面的 4 个随机密码生成函数生成 6 位密码的运行时间,进而对他们的时间效率进行一个简单的对比。
方法五:
最终得出的结果是:
方法一:9.E-5 秒
方法二:9.E-5 秒
方法三:0. 秒
方法四:3.E-5 秒
可以看出方法一和方法二的执行时间都差不多,方法四运行时间最短,而方法三的运行时间稍微长点。
windows下apache搭建php开发环境 本文详细介绍了在Windows下使用Apache2.2./PHP5.3.5/Mysql5.5./phpMyAdmin3.4.9搭建php开发环境。第一步:下载安装的文件1.Apache版本httpd-2.2.-win-x-no_ssl.msi2.M
微信公众平台开发之配置与请求 一、配置参数define('WEIXIN_APPID','wxzzzzzzzz');define('WEIXIN_APPSECRET','ouewjdsaudsamkh');define('WEIXIN_TOKEN','');define('WEIXIN_NOTIFY_URL','
微信公众平台开发之天气预报功能 最近有项目需求给微信公众号上增加了天气预报功能,使用百度提供的车联网APIV3.0中的天气查询功能实现.先上一张最终效果图:项目需求:有连接好的微
标签: php生成随机数字
本文链接地址:https://www.jiuchutong.com/biancheng/284392.html 转载请保留说明!友情链接: 武汉网站建设