本文实例讲述了php简单随机字符串生成方法。分享给大家供大家参考,具体如下:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
<?php
function rand_str( $length , $p = 'all' ){
$nums = '0123456789' ;
$lowers = 'abcdefghijklmnopqrstuvwxyz' ;
$uppers = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ' ;
if ( $p == 'all' ) {
$src = $nums . $lowers . $uppers ;
} else {
$src = '' ;
if ( strpos ( $p , 'num' ) !== false)
$src .= $nums ;
if ( strpos ( $p , 'lower' ) !== false)
$src .= $lowers ;
if ( strpos ( $p , 'upper' ) !== false)
$src .= $uppers ;
}
return $src ? substr ( str_shuffle ( $src ), 0, $length ) : $src ;
}
?>
|
去网上搜了一下随机字符串的php函数, 发现大部分的实现都用到了循环--这有点低效率啊. 在php中, 有各种各样的函数, 只有你想不到, 没有他想不到. str_shuffle()函数可以轻松做到随机字符串. 不过呢, 还是封装一个吧, 毕竟有的人有只用大写字母和只用数字的需求.
函数的第二个参数num, lower, upper可以随意组合哦.
真正核心的语句只有一行
1
|
substr ( str_shuffle ( $src ), 0, $length )
|
作用是将字符串$src乱序并且截取前$length个字符.
希望本文所述对大家PHP程序设计有所帮助。