下方代码生成一个4位随机数:
<?php
function rand_str($num = 4){
//range创建指定范围的数组
$number = range(0,9);
$lower = range("a","z");
$upper = range("A","Z");
//使用array_merge将数组合并
$new_arr = array_merge($number,$lower,$upper);
//打乱数组
shuffle($new_arr);
if($num < 1){
$num = 1;
}
if($num == 1){
//array_rand随机取出素组键值
$key = array_rand($new_arr,$num);
return $new_arr[$key];
}
else{
$value = '';
$keys = array_rand($new_arr,$num);
foreach( $keys as $key )
{
$value .= $new_arr[$key];
}
return $value;
}
}
$a = rand_str();
echo $a;
上述代码使用了几个PHP自带函数,分别解释下每个函数的含义。
range()函数
range()
函数创建一个包含指定范围的元素的数组,比如创建一个1-5的数组,是一个range(1,5)
array_merge() 函数
array_merge()
函数把一个或多个数组合并为一个数组,可接收多个参数。
shuffle()函数
shuffle()
函数把数组中的元素按随机顺序重新排序
array_rand()函数
array_rand()
函数返回数组中的随机键名,或者如果您规定函数返回不只一个键名,则返回包含随机键名的数组。