首页 > php教程 > php手册 > 正文

PHP生成随机字符串程序代码

WBOY
发布: 2016-06-13 10:02:05
原创
1248 人浏览过

因为工具需我们需要写一个可以随机字符串生成了函数,这个我在想网上应该很多这类生成随机字符串函数,百度了一下一大堆下面我来给各位总结这些不错的php函数。

利用for循环把我们定义好的字符遍历即可

 代码如下 复制代码


/* Generate Password
* Length : 8
*/
$str = “0123456789abcdefghijklmnopqrstuvwxyz”;   //   输出字符集
$n = 8;   //   输出串长度
$len = strlen($str)-1;
for($i=0 ; $i $s .=  $str[rand(0,$len)];
}
echo $s . “
”;
?>


可以生成指定长度的纯数字字符串、字符字符串等等。
(大写、小写、大小写及大小写与数字的组合,还可以根据喜好进行扩充)。

下面的$length=5,如果你改成10就是10位。
把$str = 'abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ' 改成$str = '0123456789' 就是纯数字字符串。

 代码如下 复制代码

function getRandStr($length) { 
$str = 'abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
$randString = '';
$len = strlen($str)-1;
for($i = 0;$i $num = mt_rand(0, $len);
$randString .= $str[$num];
}
return $randString ; 
}

//使用方法如下
$test=getRandStr($length=5);
echo $test;
?>

或使用while

 代码如下 复制代码

 /**
  */
 function createRandomStr($length){
  $str = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';//62个字符
  $strlen = 62;
  while($length > $strlen){
   $str .= $str;
   $strlen += 62;
  }
  $str = str_shuffle($str);
  return substr($str,0,$length);
 }
echo createRandomStr(10);

?>

利用数组和字符转换的思想:

 代码如下 复制代码

 /**
  *@blog
  */
 function createRandomStr($length){
  $str = array_merge(range(0,9),range('a','z'),range('A','Z'));
  shuffle($str);
  $str = implode('',array_slice($str,0,$length));
  return $str;
 }
 echo createRandomStr(10);
?>

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门推荐
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板