>  기사  >  백엔드 개발  >  php生成随机密码程序代码_PHP教程

php生成随机密码程序代码_PHP教程

WBOY
WBOY원래의
2016-07-13 16:59:57854검색

生成随机密码方法有很多种,最简单的就是使用php mt_rand()函数来直接生成一串数字了,下面我来给大家介绍php生成随机密码程序

最简单的办法mt_rand函数

mt_rand() 使用 Mersenne Twister 算法返回随机整数。

例子

在本例中,我们会返回一些随机数:

 代码如下 复制代码

echo(mt_rand());
echo(mt_rand());
echo(mt_rand(10,100));
?>

输出类似:

3150906288
513289678
35

上面相对来说安全指数很低的,因为全是数字哦,下面另名一种

1、预置一个的字符串 $chars ,包括 a – z,A – Z,0 – 9,以及一些特殊字符
2、在 $chars 字符串中随机取一个字符

 代码如下 复制代码

function generate_password( $length = 8 ) {
// 密码字符集,可任意添加你需要的字符
$chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*()-_ []{}~`+=,.;:/?|';

$password = '';
for ( $i = 0; $i {
// 这里提供两种字符获取方式
// 第一种是使用 substr 截取$chars中的任意一位字符;
// 第二种是取字符数组 $chars 的任意元素
// $password .= substr($chars, mt_rand(0, strlen($chars) - 1), 1);
$password .= $chars[ mt_rand(0, strlen($chars) - 1) ];
}
return $password;
}

一个朋友提供的md5()函数的返回值的缘故,生成的密码只包括字母和数字,不过也算是一个不错的方法。算法思想:
1、time() 获取当前的 Unix 时间戳
2、将第一步获取的时间戳进行 md5() 加密
3、将第二步加密的结果,截取 n 位即得想要的密码

 代码如下 复制代码

function get_password( $length = 8 )
{
    $str = substr(md5(time()), 0, 6);
    return $str;
}

www.bkjia.comtruehttp://www.bkjia.com/PHPjc/631273.htmlTechArticle生成随机密码方法有很多种,最简单的就是使用php mt_rand()函数来直接生成一串数字了,下面我来给大家介绍php生成随机密码程序 最简单的办...
성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.