029-81773686

宏 · 新闻

当前位置: 首页 > 宏 · 新闻宏博观点  

西安做网站PHP生成随机字符串(HOOBOO)

2018.08.09

方法01:

function generateRandomString($length = 10) { 

    $characters = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ'; 

    $randomString = ''; 

    for ($i = 0; $i < $length; $i++) { 

        $randomString .= $characters[rand(0, strlen($characters) - 1)]; 

    } 

    return $randomString; 

} echo generateRandomString(20);


方法02:

/** 

* 产生随机码 

* @param $length - 要多长 

* @param $numberic - 数字还是字符串 

* @return 返回字符串 

*/

if( ! function_exists('random2')){

function random2($length, $numeric = 0) {  

$seed = base_convert(md5(microtime().$_SERVER['DOCUMENT_ROOT']), 16, $numeric ? 


10 : 35);  

$seed = $numeric ? (str_replace('0', '', $seed).'012340567890') : 


($seed.'zZ'.strtoupper($seed));  

if($numeric) {  

$hash = '';  

} else {  

$hash = chr(rand(1, 26) + rand(0, 1) * 32 + 64);  

$length--;  

}  

$max = strlen($seed) - 1;  

for($i = 0; $i < $length; $i++) {  

$hash .= $seed{mt_rand(0, $max)};  

}  

return $hash;  

}

}


方法03:

/**

* 生成不重复的随机数

* @param  int $start  需要生成的数字开始范围

* @param  int $end 结束范围

* @param  int $length 需要生成的随机数个数

* @return array       生成的随机数

*/

function get_rand_number($start=1,$end=10,$length=4){

$connt=0;

$temp=array();

while($connt<$length){

$temp[]=rand($start,$end);

$data=array_unique($temp);

$connt=count($data);

}

sort($data);

return $data;

}



方法04:



/**

* array unique_rand( int $min, int $max, int $num )

* 生成一定数量的不重复随机数

* $min 和 $max: 指定随机数的范围

* $num: 指定生成数量

*/

function unique_rand($min, $max, $num) {

//初始化变量为0

$count = 0;

//建一个新数组

$return = array();

while ($count < $num) {

//在一定范围内随机生成一个数放入数组中

$return[] = mt_rand($min, $max);

//去除数组中的重复值用了“翻翻法”,就是用array_flip()把数组的key和value交换两次


。这种做法比用 array_unique() 快得多。

$return = array_flip(array_flip($return));

//将数组的数量存入变量count中

$count = count($return);

}

//为数组赋予新的键名

shuffle($return);

return $return;

}

方法05:


/**

+----------------------------------------------------------

* 产生随机字串,可用来自动生成密码

* 默认长度6位 字母和数字混合 支持中文

+----------------------------------------------------------

* @param string $len 长度

* @param string $type 字串类型

* 0 字母 1 数字 其它 混合

* @param string $addChars 额外字符

+----------------------------------------------------------

* @return string

+----------------------------------------------------------

*/

if( ! function_exists('rand_string')){

function rand_string($len=6,$type='',$addChars='') {

$str ='';

switch($type) {

case 0:

$chars='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz'.


$addChars;

break;

case 1:

$chars= str_repeat('0123456789',3);

break;

case 2:

$chars='ABCDEFGHIJKLMNOPQRSTUVWXYZ'.$addChars;

break;

case 3:

$chars='abcdefghijklmnopqrstuvwxyz'.$addChars;

break;

case 4:

$chars = "让价值共享 记录企业发展脚步 感恩相伴 温馨提醒:找西安做


网站的公司,请选择手续齐全、业务精、服务好的正规公司西安建站公司西安做网站的公司西安网站建设西安网络公司


西安建站西安做网站让价值共享 记录企业发展脚步 感恩相伴 温馨提醒:找西安做网站的公司,请选择手续齐全、业务


精、服务好的正规公司西安建站公司西安做网站的公司西安网站建设西安网络公司西安建站西安做网站让价值共享 记录


企业发展脚步 感恩相伴 温馨提醒:找西安做网站的公司,请选择手续齐全、业务精、服务好的正规公司西安建站公司


西安做网站的公司西安网站建设西安网络公司西安建站西安做网站让价值共享 记录企业发展脚步 感恩相伴 温馨提醒:


找西安做网站的公司,请选择手续齐全、业务精、服务好的正规公司西安建站公司西安做网站的公司西安网站建设西安


网络公司西安建站西安做网站让价值共享 记录企业发展脚步 感恩相伴 温馨提醒:找西安做网站的公司,请选择手续齐


全、业务精、服务好的正规公司西安建站公司西安做网站的公司西安网站建设西安网络公司西安建站西安做网站让价值


共享 记录企业发展脚步 感恩相伴 温馨提醒:找西安做网站的公司,请选择手续齐全、业务精、服务好的正规公司西安


建站公司西安做网站的公司西安网站建设西安网络公司西安建站西安做网站让价值共享 记录企业发展脚步 感恩相伴 温


馨提醒:找西安做网站的公司,请选择手续齐全、业务精、服务好的正规公司西安建站公司西安做网站的公司西安网站


建设西安网络公司西安建站西安做网站让价值共享 记录企业发展脚步 感恩相伴 温馨提醒:找西安做网站的公司,请选


择手续齐全、业务精、服务好的正规公司西安建站公司西安做网站的公司西安网站建设西安网络公司西安建站西安做网


站让价值共享 记录企业发展脚步 感恩相伴 温馨提醒:找西安做网站的公司,请选择手续齐全、业务精、服务好的正规


公司西安建站公司西安做网站的公司西安网站建设西安网络公司西安建站西安做网站".$addChars;

break;

default :

// 默认去掉了容易混淆的字符oOLl和数字01,要添加请使用addChars参数


$chars='ABCDEFGHIJKMNPQRSTUVWXYZabcdefghijkmnpqrstuvwxyz23456789'.$addChars;

break;

}

if($len>10 ) {//位数过长重复字符串一定次数

$chars= $type==1? str_repeat($chars,$len) : str_repeat($chars,5);

}

if($type!=4) {

$chars   =   str_shuffle($chars);

$str     =   substr($chars,0,$len);

}else{

// 中文随机字

for($i=0;$i<$len;$i++){

  $str.= self::msubstr($chars, floor(mt_rand(0,mb_strlen($chars,'utf-


8')-1)),1);

}

}

return $str;

}

}



让价值共享 记录企业发展脚步 感恩相伴


温馨提醒:找西安做网站的公司,请选择手续齐全、业务精、服务好的正规公司


精彩案例