php随机生成昵称,使用PHP批量生成随机用户名

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

使用PHP批量生成随机用户名生成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)

复制代码 代码如下:

/* 合并所有生成结果 jb51.net*/

$result_file = "./result.dic";

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

//合并 1.dic ~ 5.dic

for ($i=1; $i<=5; $i++)

{

$cur_file = file_get_contents($i.".dic");

fwrite($fp, $cur_file);

}

//合并 10.dic ~ 11.dic

for ($i=10; $i<=11; $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])<=16) {

$rs[] = $files[$i];

} else {

continue;

}

}

//写入目标文件

$result = implode("", $rs);

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

fwrite($fp, $result);

echo 'Write succeed';

?>

【使用PHP批量生成随机用户名】相关文章:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值