php实现随机生成易于记忆的密码

 更新时间:2015年06月19日 16:10:07   作者:企鹅不笨  
这篇文章主要介绍了php实现随机生成易于记忆的密码,实例分析了php生成随机密码的相关技巧,需要的朋友可以参考下

本文实例讲述了php实现随机生成易于记忆的密码。分享给大家供大家参考。具体实现方法如下:

这里通过预定义一些单词,让php随机从这些单词中选择进行组合生成密码

function random_readable_pwd($length=10){
  // the wordlist from which the password gets generated 
  // (change them as you like)
  $words = 'dog,cat,sheep,sun,sky,red,ball,happy,ice,';
  $words .= 'green,blue,music,movies,radio,green,turbo,';
  $words .= 'mouse,computer,paper,water,fire,storm,chicken,';
  $words .= 'boot,freedom,white,nice,player,small,eyes,';
  $words .= 'path,kid,box,black,flower,ping,pong,smile,';
  $words .= 'coffee,colors,rainbow,plus,king,tv,ring';
  // Split by ",":
  $words = explode(',', $words);
  if (count($words) == 0){ die('Wordlist is empty!'); }
  // Add words while password is smaller than the given length
  $pwd = '';
  while (strlen($pwd) < $length){
    $r = mt_rand(0, count($words)-1);
    $pwd .= $words[$r];
  }
  // append a number at the end if length > 2 and
  // reduce the password size to $length
  $num = mt_rand(1, 99);
  if ($length > 2){
    $pwd = substr($pwd,0,$length-strlen($num)).$num;
  } else { 
    $pwd = substr($pwd, 0, $length);
  }
  return $pwd;
}
//使用范例:
random_readable_pwd(10) => returns something like: pingwater6, radiohap28, sunwhite84, happykid44, etc...

希望本文所述对大家的php程序设计有所帮助。

相关文章

  • PHP中一个有趣的preg_replace函数详解

    PHP中一个有趣的preg_replace函数详解

    这篇文章主要给大家介绍了关于PHP中一个有趣的preg_replace函数的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用php具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2018-08-08
  • 一个PHP数组应该有多大的分析

    一个PHP数组应该有多大的分析

    PHP在数组处理上非常低效,尤其是内存占用较多,常常使得httpd进程消耗太多资源。
    2009-07-07
  • PHP实现的简单AES加密解密算法实例

    PHP实现的简单AES加密解密算法实例

    这篇文章主要介绍了PHP实现的简单AES加密解密算法,结合具体实例形式分析了php基于mcrypt_encrypt、bin2hex、mcrypt_decrypt等方法进行字符串加密解密的相关操作技巧,需要的朋友可以参考下
    2017-05-05
  • PHP实现图片旋转的方法详解

    PHP实现图片旋转的方法详解

    这篇文章主要为大家详细介绍了PHP如何实现图片旋转功能,文中的示例代码讲解详细,对我们学习PHP有一定帮助,感兴趣的小伙伴可以了解一下
    2022-11-11
  • PHP数组与字符串互相转换实例

    PHP数组与字符串互相转换实例

    在本篇文章里小编给大家分享的是关于PHP数组与字符串互相转换实例内容,有需要的朋友们可以学习下。
    2020-05-05
  • php发送与接收流文件的方法

    php发送与接收流文件的方法

    这篇文章主要介绍了php发送与接收流文件的方法,实例分析了php针对流文件的常见操作技巧,需要的朋友可以参考下
    2015-02-02
  • php设计模式  Command(命令模式)

    php设计模式 Command(命令模式)

    将一个请求封装为一个对象从而使你可用不同的请求对客户进行参数化,对请求排除或记录请求日志,以及支持可取消的操作
    2011-06-06
  • PHP Global变量定义当前页面的全局变量实现探讨

    PHP Global变量定义当前页面的全局变量实现探讨

    我们在这篇文章中就针对PHP Global变量出现的问题给出了一些具体的解决办法,感兴趣的朋友可以参考下哈
    2013-06-06
  • 关于svn冲突的解决方法

    关于svn冲突的解决方法

    本篇文章是对关于svn冲突的解决方法进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • Ajax+PHP 边学边练之四 表单

    Ajax+PHP 边学边练之四 表单

    通过上一篇文章已经了解到如何利用Ajax和PHP对数据库进行数据读取,这样可以动态的获取到数据库的最新数据。本篇则继续介绍通过表单(Form)向数据库中写入数据。
    2009-11-11

最新评论