我发现了几次创建随机用户名生成器的尝试,但它们实际上只包含一组附加到字符串的随机字符。这仅适用于it really just looks awkward as it doesn't seem very human-like instead of just a set of random characters
。
是否有一个php库来处理从字典生成的用户名而不是随机字符生成函数
我找到的最接近的是:mudnames但问题是字典不是英文字典。
提前致谢。
答案 0 :(得分:1)
嗯,你可以随时自己动手:
function get_random_username(array $dictionary, $separator = '-', $min = 2, $max = 3) {
return implode(
$separator,
array_map(
function ($key) use ($dictionary) {
return trim($dictionary[$key]);
},
array_rand($dictionary, rand($min, $max))
)
);
}
以下是三个用法示例。第一个使用静态数组作为单词源,第二个使用fzaninotto Faker
库,最后一个使用GNU / Linux字典作为单词源:
var_dump(
get_random_username(
array ('foo', 'bar', 'baz', 'quux')
),
get_random_username(
\Faker\Factory::create()->unique()->words(1000)
),
get_random_username(
file('/usr/share/dict/words')
)
);
示例运行:
$ php gen.php
string(12) "bar-foo-quux"
string(11) "porro-magni"
string(11) "razor-edged"
答案 1 :(得分:0)
你可以建立自己的。 第一:在带有id的mysql数据库中记录一些名称。 然后:在PHP中,随机获取它们。
例如:
mysql表
id -- names
2.....John
3.....Melissa
.............
999.....Saba
PHP代码:
<?php
$random_id= rand(1,999); //get a random id
$sql="select*from NAMES where id='$random_id'" //then get a random name with id
//Your other codes...
?>
答案 2 :(得分:0)
生成随机用户名
$a = array(
'key' => 'word1',
'key2' => 'word2',
);
$random_word = $a[array_rand($array)];
您还可以在使用字典后从字典中删除该单词,以便生成真正独特的随机用户名。此外,您可以添加一些带有单词的随机字符,使其更像人类。您可以导入任何有效字符。 dictonary of words to PHP array to use it.Finally你可以选择两个随机字,添加一些随机字符并生成复杂的随机用户名。