Home > Backend Development > PHP Tutorial > 使用PHP批量生成随机用户名_PHP

使用PHP批量生成随机用户名_PHP

WBOY
Release: 2016-06-01 12:30:25
Original
934 people have browsed it

生成6 ~ 16位的用户名若干个,主要是文本操作,同事前提是要有一个字符串包。主要包含三个程序。

程序一:负责从字典中随机提取数据,写入一个新文件。(1.php)

/* 从字典文件中提取随机值 */

$file1 = "./Words.dic";
$file2 = "./common_pass_mini.dic";
$file3 = "./Sys_Month_Date.Dic";
$rfile = "./5.dic";
$n = 2000;

//提取字典
$basef = file($file1);
$extf = file($file2);
$extf2 = file($file3);
$bf_sum = (count($basef)-1);
$ef_sum = (count($extf)-1);
$ef2_sum =(count($extf2)-1);

//获取随机用户名
for ($i=0; $i{
 $bn = crand(0, $bf_sum);
 $en = crand(0, $ef_sum);
 $en2 = crand(0, $ef2_sum);
 $name = $basef[$bn]."_".$extf[$en];
 $name = str_replace("\r\n", "", $name);
 $all_name[] = $name;
}

//写入文件
$result = implode("\r\n", $all_name);
$fp = fopen($rfile, "a+") or die('Open $rfile failed');
if (fwrite($fp, $result)) {
 echo 'Write user succeed!';
} else {
 echo 'Write user failed';
}

//生成随机数字函数
function crand($start, $end)
{
 return mt_rand($start, $end);
}
?>


程序二:负责把上面生成的数个文件的结果合并。(2.php)

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

$result_file = "./result.dic";

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

//合并 1.dic ~ 5.dic
for ($i=1; $i{
 $cur_file = file_get_contents($i.".dic");
 fwrite($fp, $cur_file);
}

//合并 10.dic ~ 11.dic
for ($i=10; $i{
 $cur_file = file_get_contents($i.".dic");
 fwrite($fp, $cur_file);
}
fclose($fp);
echo 'Write Succeed';

?>


程序三:负责过滤重复值和不属于 6~16 之间的值并且生成最终结果(3.php)


/* 生成最终结果 */

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

//去掉重复值
$files = file($file);
$files = array_unique($files);

//判断值是不是大于6位小于16位
$sum = count($files);
for ($i=0; $i{
 if (strlen($files[$i])>=6 && strlen($files[$i])  $rs[] = $files[$i];
 } else {
  continue;
 }
}

//写入目标文件
$result = implode("", $rs);
$fp = fopen($target, "a+") or die("Open $target failed");
fwrite($fp, $result);
echo 'Write succeed';

?>


基本搞定手工,上面生成了 2.7W个随机用户名,呵呵,保证够你使用。

Related labels:
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template