Random string generator PHP
我试图创建一个带有数字和字母的随机字符串,我发现了这个函数,并认为它是好的,但我不知道它是否是创建真正随机字符串的正确方法,或者是否有更简单的方法?以下是我的资料:
1 2 3 4 5 6 7 8 9 10 11
| function randomGen () {
$chars = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
$length = strlen($chars);
$random;
for ($i = 0; $i < 8; $i++) {
$random = $chars[rand(0, $length - 1)];
}
return $random;
} |
- 这个函数有什么问题?
- 就语法而言,没有什么错。我只是不确定这是不是最好的方法。看到其他一些答案,我就知道我使用的代码比需要的要多。
- 使用str_shuffle而不是编写单独的函数。
- 你应该看看这个项目:github.com/fzaninoto/faker
- 抱歉,字符串random必须是laravel本身
- @mypclovesme的姿势取决于你想用随机字符串做什么。
- 你可以将uniqid()附加到它上面,如果你想要的是独特性的话,它将使它独一无二。很多方法可以做到这一点。
您可以尝试使用$random = substr(str_shuffle(MD5(microtime())), 0, 8);,它将输出与示例中相同数量的随机字符。实际上,我比大多数人更喜欢这个方法,因为它不需要您输入预期的字符,更重要的是,它可以在一行代码中完成!