PHP生成指定随机字符串的方法

清华大佬耗费三个月吐血整理的几百G的资源,免费分享!....>>>

一个简单的函数,没有对生成的内容作强制设定。所以在生成的字符串长度较少的时候,会出现没有指定类型字符的情况。当然,修改起来也很简单,这里就不做添加了。
 
/**
 * @param string $type
 * @param $length
 * @return string
 */
function randomString($type="number,upper,lower",$length){
    $valid_type = array('number','upper','lower');
    $case = explode(",",$type);
  
    $count = count($case);
    //根据交集判断参数是否合法
    if($count !== count(array_intersect($case,$valid_type))){
        return false;
    }
    $lower = "abcdefghijklmnopqrstuvwxyz";
    $upper = strtoupper($lower);
    $number = "0123456789";
    $str_list = "";
    for($i=0;$i<$count;++$i){
        $str_list .= $$case[$i];
    }
    return substr(str_shuffle($str_list),0,$length);
}
echo randomString("number,upper,lower",12);