VB.net 2010 视频教程 VB.net 2010 视频教程 python基础视频教程
SQL Server 2008 视频教程 c#入门经典教程 Visual Basic从门到精通视频教程
当前位置:
首页 > PHP >
  • php随机生成字符串程序方法总结

在开发中我们可以会经常碰到需要生成系统随机密码或者是登陆验证码之类的,这些数字我们肯定需要随机生成的不能定义的,下面我来总结了一些常用的在php中生成随机字符的代码,有需要的朋友可参考.

随机生成数数字

mt_rand()函数,代码如下:

$num = mt_rand(0,9999999);

但如果我想随机生成字符串怎么操作,网站找到一个方法,代码如下:

  1. function random($length) {  
  2.      srand(date("s"));  
  3.      $possible_charactors = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ";  
  4.      $string = "";  
  5.      while(strlen($string)<$length) {  
  6.           $string .= substr($possible_charactors,(rand()%(strlen($possible_charactors))),1);  
  7.      }  
  8.      return($string);  

例2,代码如下:

  1. function random_string($length$max=FALSE) 
  2.   if (is_int($max) && $max > $length
  3.   { 
  4.     $length = mt_rand($length$max); 
  5.   } 
  6.   $output = ''
  7.    
  8.   for ($i=0; $i<$length$i++) 
  9.   { 
  10.     $which = mt_rand(0,2); 
  11.      
  12.     if ($which === 0) 
  13.     { 
  14.       $output .= mt_rand(0,9); 
  15.     } 
  16.     elseif ($which === 1) 
  17.     { 
  18.       $output .= chr(mt_rand(65,90)); 
  19.     } 
  20.     else 
  21.     { 
  22.       $output .= chr(mt_rand(97,122)); 
  23.     } 
  24.   } 
  25.   return $output

例3,代码如下:

  1. <?php 
  2. // 说明:php 中生成随机字符串的方法  
  3. // 整理:http://www.phpfensi.com  
  4. function genRandomString($len
  5.     $chars = array
  6.         "a""b""c""d""e""f""g""h""i""j""k",   
  7.         "l""m""n""o""p""q""r""s""t""u""v",   
  8.         "w""x""y""z""A""B""C""D""E""F""G",   
  9.         "H""I""J""K""L""M""N""O""P""Q""R",   
  10.         "S""T""U""V""W""X""Y""Z""0""1""2",   
  11.         "3""4""5""6""7""8""9" 
  12.     ); 
  13.     $charsLen = count($chars) - 1; 
  14.     shuffle($chars);    // 将数组打乱  
  15.        
  16.     $output = ""
  17.     for ($i=0; $i<$len$i++) 
  18.     { 
  19.         $output .= $chars[mt_rand(0, $charsLen)]; 
  20.     } 
  21.     return $output
  22. $str = genRandomString(25); 
  23. $str .= "<br />"
  24. $str .= genRandomString(25); 
  25. $str .= "<br />"
  26. $str .= genRandomString(25); 
  27. echo $str
  28. ?>  

注:传入的参数是你想要生成的随机字符串的长度.

 

出处:http://www.phpfensi.com/php/20140727/3997.html


相关教程