在一些特殊应用中,需要生成随机字符串,比如生成系统随机密码或者是登陆验证码等,本文介绍的函数能够返回指定长度的随机字符串,默认包含大小写字母和数字,你可以很容易的修改以便符合自己的需要。
Example Source Code
<?php
// 说明:php中生成随机字符串的方法
// 整理:will2011 http://www.51itrencai.com
function genRandomString($len)
{
$chars = array(
"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k",
"l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v",
"w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G",
"H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R",
"S", "T", "U", "V", "W", "X", "Y", "Z", "0", "1", "2",
"3", "4", "5", "6", "7", "8", "9");
$charsLen = count($chars) - 1;
shuffle($chars);// 将数组打乱
$output = "";
for($i=0; $i<$len; $i++)
{
$output .= $chars[mt_rand(0, $charsLen)];
}
return $output;
}
$str = genRandomString(4);
$str .= "<br />";
$str .= genRandomString(8);
$str .= "<br />";
$str .= genRandomString(12);
echo $str;
?>
// 说明:php中生成随机字符串的方法
// 整理:will2011 http://www.51itrencai.com
function genRandomString($len)
{
$chars = array(
"a", "b", "c", "d", "e", "f", "g", "h", "i", "j", "k",
"l", "m", "n", "o", "p", "q", "r", "s", "t", "u", "v",
"w", "x", "y", "z", "A", "B", "C", "D", "E", "F", "G",
"H", "I", "J", "K", "L", "M", "N", "O", "P", "Q", "R",
"S", "T", "U", "V", "W", "X", "Y", "Z", "0", "1", "2",
"3", "4", "5", "6", "7", "8", "9");
$charsLen = count($chars) - 1;
shuffle($chars);// 将数组打乱
$output = "";
for($i=0; $i<$len; $i++)
{
$output .= $chars[mt_rand(0, $charsLen)];
}
return $output;
}
$str = genRandomString(4);
$str .= "<br />";
$str .= genRandomString(8);
$str .= "<br />";
$str .= genRandomString(12);
echo $str;
?>
注意:传入的参数是你想要生成的随机字符串的长度。