首页 >后端开发 >php教程 >用于批量生成随机用户名的php程序

用于批量生成随机用户名的php程序

WBOY
WBOY原创
2016-07-25 09:04:19978浏览
  1. /* 从字典文件中提取随机值 */

  2. $file1 = "./Words.dic";
  3. $file2 = "./common_pass_mini.dic";
  4. $file3 = "./Sys_Month_Date.Dic";
  5. $rfile = "./5.dic";
  6. $n = 2000;
  7. //提取字典

  8. $basef = file($file1);
  9. $extf = file($file2);
  10. $extf2 = file($file3);
  11. $bf_sum = (count($basef)-1);
  12. $ef_sum = (count($extf)-1);
  13. $ef2_sum =(count($extf2)-1);
  14. //获取随机用户名

  15. for ($i=0; $i{
  16. $bn = crand(0, $bf_sum);
  17. $en = crand(0, $ef_sum);
  18. $en2 = crand(0, $ef2_sum);
  19. $name = $basef[$bn]."_".$extf[$en];
  20. $name = str_replace("/r/n", "", $name);
  21. $all_name[] = $name;
  22. }
  23. //写入文件

  24. $result = implode("/r/n", $all_name);
  25. $fp = fopen($rfile, "a+") or die('Open $rfile failed');
  26. if (fwrite($fp, $result)) {
  27. echo 'Write user succeed!';
  28. } else {
  29. echo 'Write user failed';
  30. }
  31. //生成随机数字函数

  32. function crand($start, $end)
  33. {
  34. return mt_rand($start, $end);
  35. }
  36. ?>
复制代码

2、合并以上生成的数个文件结果

  1. /* 合并所有生成结果 jbxue.com*/

  2. $result_file = "./result.dic";

  3. $fp = fopen($result_file, "a+") or die("Open $result_file failed");

  4. //合并 1.dic ~ 5.dic

  5. for ($i=1; $i{
  6. $cur_file = file_get_contents($i.".dic");
  7. fwrite($fp, $cur_file);
  8. }
  9. //合并 10.dic ~ 11.dic

  10. for ($i=10; $i{
  11. $cur_file = file_get_contents($i.".dic");
  12. fwrite($fp, $cur_file);
  13. }
  14. fclose($fp);
  15. echo 'Write Succeed';
  16. ?>
复制代码

3、过滤重复值和不属于 6~16 之间的值,并生成最终可用数据

  1. /* 生成最终结果 */

  2. $file = "./result.dic";

  3. $target = "./target.dic";
  4. //去掉重复值

  5. $files = file($file);
  6. $files = array_unique($files);
  7. //判断值是不是大于6位小于16位

  8. $sum = count($files);
  9. for ($i=0; $i{
  10. if (strlen($files[$i])>=6 && strlen($files[$i])$rs[] = $files[$i];
  11. } else {
  12. continue;
  13. }
  14. }
  15. //写入目标文件

  16. $result = implode("", $rs);
  17. $fp = fopen($target, "a+") or die("Open $target failed");
  18. fwrite($fp, $result);
  19. echo 'Write succeed';
  20. ?>
复制代码


声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn