PHP生成隨機字符串程序代碼
來源:程序員人生 發(fā)布時間:2014-04-09 07:51:17 閱讀次數(shù):2780次
因為工具需我們需要寫一個可以隨機字符串生成了函數(shù),這個我在想網(wǎng)上應該很多這類生成隨機字符串函數(shù),百度了一下一大堆下面我來給各位總結(jié)這些不錯的php函數(shù)。
利用for循環(huán)把我們定義好的字符遍歷即可,代碼如下:
- <?php
-
-
-
- $str = “0123456789abcdefghijklmnopqrstuvwxyz”;
- $n = 8;
- $len = strlen($str)-1;
- for($i=0 ; $i<$n; $i++){
- $s .= $str[rand(0,$len)];
- }
- echo $s . “<br/>”;
- ?>
可以生成指定長度的純數(shù)字字符串、字符字符串等等,(大寫、小寫、大小寫及大小寫與數(shù)字的組合,還可以根據(jù)喜好進行擴充)。
下面的$length=5,如果你改成10就是10位。
把$str = 'abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ' 改成$str = '0123456789' 就是純數(shù)字字符串,代碼如下:
- <?php
- function getRandStr($length) {
- $str = 'abcdefghijklmnopqrstuvwxyz0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ';
- $randString = '';
- $len = strlen($str)-1;
- for($i = 0;$i < $length;$i ++){
- $num = mt_rand(0, $len);
- $randString .= $str[$num];
- }
- return $randString ;
- }
-
- $test=getRandStr($length=5);
- echo $test;
- ?>
或使用while,代碼如下:
- <?php
-
-
- function createRandomStr($length){
- $str = '0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ';
- $strlen = 62;
- while($length > $strlen){
- $str .= $str;
- $strlen += 62;
- }
- $str = str_shuffle($str);
- return substr($str,0,$length);
- }
- echo createRandomStr(10);
- ?>
利用數(shù)組和字符轉(zhuǎn)換的思想,代碼如下:
- <?php
-
-
-
- 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);
- ?>
生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對您的學習有所幫助,可以手機掃描二維碼進行捐贈