[PHP方法]使用PHP生成随机数的方法

下方代码生成一个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() 函数返回数组中的随机键名,或者如果您规定函数返回不只一个键名,则返回包含随机键名的数组。

标签: PHP函数 PHP方法

发表评论: