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


Posted in PHP onJanuary 24, 2017

前言

一般情况下我们在做程序的时候肯定会有很多地方使用到随机字符串、比如做验证码用到的、然后就把这个函数封装起来、使用时候要设置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 相关文章推荐
社区(php&amp;&amp;mysql)一
Oct 09 PHP
php smarty模版引擎中的缓存应用
Dec 02 PHP
2014过年倒计时示例
Jan 31 PHP
PHP错误Allowed memory size of 67108864 bytes exhausted的3种解决办法
Jul 28 PHP
PHP中file_get_contents函数抓取https地址出错的解决方法(两种方法)
Sep 22 PHP
PHP实现补齐关闭的HTML标签
Mar 22 PHP
PHP如何将XML转成数组
Apr 04 PHP
thinkphp中多表查询中防止数据重复的sql语句(必看)
Sep 22 PHP
PHP链表操作简单示例
Oct 15 PHP
PHP串行化与反串行化实例分析
Dec 27 PHP
php+javascript实现的动态显示服务器运行程序进度条功能示例
Aug 07 PHP
PHP实现在对象之外访问其私有属性private及保护属性protected的方法
Nov 20 PHP
基于yaf框架和uploadify插件,做的一个导入excel文件,查看并保存数据的功能
Jan 24 #PHP
PHP 配置后台登录以及模板引入
Jan 24 #PHP
PHP实现登陆表单提交CSRF及验证码
Jan 24 #PHP
php获取访问者浏览页面的浏览器类型
Jan 23 #PHP
php字符集转换
Jan 23 #PHP
Yii全局函数用法示例
Jan 22 #PHP
PHP5.5安装PHPRedis扩展及连接测试方法
Jan 22 #PHP
You might like
PHP中的正规表达式(二)
2006/10/09 PHP
php addslashes及其他清除空格的方法是不安全的
2012/01/25 PHP
php实现每天自动变换随机问候语的方法
2015/05/12 PHP
javascript判断单选框或复选框是否选中方法集锦
2007/04/04 Javascript
利用js跨页面保存变量做菜单的方法
2008/01/17 Javascript
javascript一个无懈可击的实例化XMLHttpRequest的方法
2010/10/13 Javascript
jquery点击页面任何区域实现鼠标焦点十字效果
2013/06/21 Javascript
js 三级关联菜单效果实例
2013/08/13 Javascript
浅析IE10兼容性问题(frameset的cols属性)
2014/01/03 Javascript
超简单JS二级、多级联动的简单实例
2014/02/18 Javascript
Vue 换肤的示例实践
2018/01/23 Javascript
使用weixin-java-tools完成微信授权登录、微信支付的示例
2018/09/26 Javascript
autojs 蚂蚁森林能量自动拾取即给指定好友浇水的实现方法
2020/05/03 Javascript
vue实现简易图片左右旋转,上一张,下一张组件案例
2020/07/31 Javascript
python对配置文件.ini进行增删改查操作的方法示例
2017/07/28 Python
python中import reload __import__的区别详解
2017/10/16 Python
python timestamp和datetime之间转换详解
2017/12/11 Python
使用Python+Splinter自动刷新抢12306火车票
2018/01/03 Python
python def 定义函数,调用函数方式
2020/06/02 Python
python怎么对数字进行过滤
2020/07/05 Python
python时间序列数据转为timestamp格式的方法
2020/08/03 Python
css3旋转木马_动力节点Java学院整理
2017/07/12 HTML / CSS
公司营业员的工作总结自我评价
2013/10/05 职场文书
教育系毕业生中文求职信范文
2013/10/06 职场文书
中层干部竞争上岗演讲稿
2014/01/13 职场文书
信息总监管理职责范本
2014/03/08 职场文书
艺术学院毕业生自荐信
2014/07/05 职场文书
简单租房协议书(范本)
2014/10/13 职场文书
2014年学校德育工作总结
2014/12/05 职场文书
财政局个人总结
2015/03/04 职场文书
道德与公民自我评价
2015/03/09 职场文书
2015年感恩母亲节活动方案
2015/05/04 职场文书
党员心得体会范文2016
2016/01/23 职场文书
Nginx访问日志及错误日志参数说明
2021/03/31 Servers
CSS使用Flex和Grid布局实现3D骰子
2022/08/05 HTML / CSS
js 实现Material UI点击涟漪效果示例
2022/09/23 Javascript