因为工具需我们需要写一个可以随机字符串生成了函数,这个我在想网上应该很多这类生成随机字符串函数,百度了一下一大堆下面我来给各位总结这些不错的PHP函数。
利用for循环把我们定义好的字符遍历即可,代码如下:
可以生成指定长度的纯数字字符串、字符字符串等等,(大写、小写、大小写及大小写与数字的组合,还可以根据喜好进行扩充)。
下面的$length=5,如果你改成10就是10位。
把$str = 'abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ' 改成$str = '0123456789' 就是纯数字字符串,代码如下:
- <?PHP
- @H_301_74@function getRandStr($length) {
- $str = 'abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
- $randString = '';
- $len = strlen($str)-1;
- @H_301_74@for($i = 0;$i < $length;$i ++){
- $num = mt_rand(0, $len);
- $randString .= $str[$num];
- }
- @H_301_74@return $randString ;
- }
- //使用方法如下
- $test=getRandStr($length=5);
- echo $test;
- ?>
或使用while,代码如下:
- <?PHP
- /**
- */
- @H_301_74@function createRandomStr($length){
- $str = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';//62个字符
- $strlen = 62;
- @H_301_74@while($length > $strlen){
- $str .= $str;
- $strlen += 62;
- }
- $str = str_shuffle($str);
- @H_301_74@return substr($str,$length);
- }
- echo createRandomStr(10);
- ?>
利用数组和字符转换的思想,代码如下: