PHP封装函数实现生成随机的字符串验证码

yipeiwu_com6年前PHP代码库

前言

一般情况下我们在做程序的时候肯定会有很多地方使用到随机字符串、比如做验证码用到的、然后就把这个函数封装起来、使用时候要设置2个参数、原理是随机抓取字符串、对字符串进行拼接

$str设置里要被采集的字符串、比如

$str=´jfowef34098094j3204efa234sfg2z23srhftj345xjxjhsrth´;

则在函数里面生成的字符串就回从 $str 里面随机抓取

$codeLen设置要生成的随机字符串、设置5、则生成5个随机字符串、比如

$codeLen=´5´;//设置生成的随机数个数

代码如下

<?php

//mt_rand 获取随机数 mt_rand(min, max);
//设置被随机采集的字符串
$str="abcdefghijkmnpqrstuvwxyz0123456789ABCDEFGHIGKLMNPQRSTUVWXYZ";

//设置生成的随机数个数
$codeLen=´5´;

function str_rand($str,$codeLen){
 $rand="";
 for($i=0; $i<$codeLen-1; $i ){
  //如:随机数为30 则:$str[30]
  $rand .= $str[mt_rand(0, strlen($str)-1)]; 
 }
 return $rand;
}

$code=str_rand($str,$codeLen);
echo $code; 

?>

总结

以上就是完整的生成随机字符串的方法、除了可以用到验证码的地方还可以使用到其它地方,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

相关文章

PHP 5.3.1 安装包 VC9 VC6不同版本的区别是什么

最近在PHP官网上看到又有新版的PHP下载了,于是上去找找 For Windows的版本,可是一看,一共给了四个版本,VC9 x86 Non Thread Safe、VC9 x86 Th...

PHP使用正则表达式获取微博中的话题和对象名

本文实例讲述了PHP使用正则表达式获取微博中的话题和对象名的方法。分享给大家供大家参考。具体实现方法如下: $post_content = "@jb51和@twitter在研究用#P...

php中http_build_query 的一个问题

当我们使用CURL来post数据的时候,需要设置post的数据 curl_setopt($c, CURLOPT_POSTFIELDS, $post_data); 假如这里的$data是...

phplot生成图片类用法详解

本文实例讲述了phplot生成图片类用法。分享给大家供大家参考。具体分析如下: phplot是一个利用php的图象函数编写的一个自动生成类,首先申明一下,我对他也只是了解. 在原来的有些...

PHP版 汉字转码的实现详解

如下所示:复制代码 代码如下:<?phpfunction unicode_encode($str, $encoding='GBK', $prefix='&#', $postfix=...