/*
* 生成随机字符串
*
* $length 字符串长度
*/
function random_str($length) {
// 密码字符集,可任意添加你需要的字符
$chars = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789';
$str = '';
for($i = 0; $i < $length; $i++)
{
这里提供两种字符获取方式
// 第一种是使用 substr 截取$chars中的任意一位字符;
// 第二种是取字符数组 $chars 的任意元素
$str .= substr($chars,mt_rand(0,1)">strlen($chars) - 1),1);
$str .= $chars[mt_rand(0,strlen($chars) - 1)];
}
return $str;
}
*
* 生成随机字符串,数字,大小写字母随机组合
*
* @param int $length 长度
* @param int $type 类型,1 纯数字,2 纯小写字母,3 纯大写字母,4 数字和小写字母,5 数字和大写字母,6 大小写字母,7 数字和大小写字母
*/
function random($length = 6,$type = 1)
{
取字符集数组
$number = range(0,9);
$lowerLetter = range('a','z'$upperLetter = range('A','Z');
根据type合并字符集
if ($type == 1) {
$charset = $number;
} elseif ($type == 2$lowerLetter$type == 3$upperLetter$type == 4$charset = array_merge($number,1)">);
} $type == 5$type == 6$lowerLetter,1)">$type == 7else {
;
}
;
生成字符串
for ($str .= $charset[count($charset) - 1)];
验证规则
$type == 4 && $str) >= 2) {
if (!preg_match('/\d+/',1)">$str) || !preg_match('/[a-z]+/',1)">)) {
$str = $str,-1);
$i = $i - 1;
}
}
$type == 5 && preg_match('/[A-Z]+/',1)">$type == 6 && $type == 7 && $str) >= 3$i - 2;
}
}
}
;
}