好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

php生成随机密码程序代码 - php函数

php生成随机密码程序代码

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

最简单的办法mt_rand函数.

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

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

<?php  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  <  $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 ;   } 

一个朋友提供的md5()函数的返回值的缘故,生成的密码只包括字母和数字,不过也算是一个不错的方法,算法思想:

1、time() 获取当前的 Unix 时间戳

2、将第一步获取的时间戳进行 md5() 加密

3、将第二步加密的结果,截取 n 位即得想要的密码

实例代码如下:

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

查看更多关于php生成随机密码程序代码 - php函数的详细内容...

  阅读:38次