>  기사  >  백엔드 개발  >  PHP는 기억하기 쉬운 비밀번호를 무작위로 생성합니다.

PHP는 기억하기 쉬운 비밀번호를 무작위로 생성합니다.

WBOY
WBOY원래의
2016-07-25 08:46:10814검색
  1. function random_readable_pwd($length=10){
  2. // the wordlist from which the password gets generated
  3. // (change them as you like)
  4. $words = 'dog,cat,sheep,sun,sky,red,ball,happy,ice,';
  5. $words .= 'green,blue,music,movies,radio,green,turbo,';
  6. $words .= 'mouse,computer,paper,water,fire,storm,chicken,';
  7. $words .= 'boot,freedom,white,nice,player,small,eyes,';
  8. $words .= 'path,kid,box,black,flower,ping,pong,smile,';
  9. $words .= 'coffee,colors,rainbow,plus,king,tv,ring';
  10. // Split by ",":
  11. $words = explode(',', $words);
  12. if (count($words) == 0){ die('Wordlist is empty!'); }
  13. // Add words while password is smaller than the given length
  14. $pwd = '';
  15. while (strlen($pwd) < $length){
  16. $r = mt_rand(0, count($words)-1);
  17. $pwd .= $words[$r];
  18. }
  19. // append a number at the end if length > 2 and
  20. // reduce the password size to $length
  21. $num = mt_rand(1, 99);
  22. if ($length > 2){
  23. $pwd = substr($pwd,0,$length-strlen($num)).$num;
  24. } else {
  25. $pwd = substr($pwd, 0, $length);
  26. }
  27. return $pwd;
  28. }
  29. //使用范例:
  30. random_readable_pwd(10)
  31. => returns something like: pingwater6, radiohap28, sunwhite84, happykid44, etc...
复制代码

PHP


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.