php随机生成验证码,php随机生成数字,php随机生成数字加字母!


Posted in PHP onApril 01, 2021
<?php
/*
 * 方法类
 * */
class functions
{
    /**
     * PHP随机生成验证码函数
     *
     * @param array
     * @return  mixed
     */
    function randCode($params = [])
    {
        $num = $params['num'] ?? 4; //验证码个数
        $isLetter = $params['isLetter'] ? $params['isLetter'] : 1; //1是纯数字 2是字母和数字的组合

        if($isLetter==1){
            for($i=1;$i<=$num;$i++){
                $codeMin.=0;
                $codeMax.=9;
            }
            return rand($codeMin,$codeMax);
        }

        if($isLetter==2){
            //如果想调整权重,自己可以根据需求修改$codeArr这个一位数组
            $codeArr = ['1','2','3','4','5','6','7','8','9','0','a','b','c','d','e','f','g','h','i','j','k','l','m','n','o','p','q','e','s','t','u','v','w','x','y','z','1','2','3','4','5','6','7','8','9','0'];
            $codeKeys = array_rand($codeArr,$num);
            shuffle($codeKeys);
            foreach ($codeKeys as $codeValue){
                $codeStr .= $codeArr[$codeValue];
            }
            return $codeStr;
        }
    }
}

//测试生成验证码方法
$re = (new functions())->randCode([
    'num'      => 6, //需要的个数
    'isLetter' => 2, //1是纯数字 2是数字加字符串
]);
print_r($re);

 

PHP 相关文章推荐
NOT NULL 和NULL
Jan 15 PHP
php实现的在线人员函数库
Apr 09 PHP
无法在发生错误时创建会话,请检查 PHP 或网站服务器日志,并正确配置 PHP 安装(win+linux)
May 05 PHP
解析PHP SPL标准库的用法(遍历目录,查找固定条件的文件)
Jun 18 PHP
php出现内存位置访问无效错误问题解决方法
Aug 16 PHP
ThinkPHP公共配置文件与各自项目中配置文件组合的方法
Nov 24 PHP
Yii中使用PHPExcel导出Excel的方法
Dec 26 PHP
PHP请求远程地址设置超时时间的解决方法
Oct 29 PHP
PHP仿tp实现mvc框架基本设计思路与实现方法分析
May 23 PHP
php使用fputcsv实现大数据的导出操作详解
Feb 27 PHP
phpcmsv9.0任意文件上传漏洞解析
Oct 20 PHP
利用ajax+php实现商品价格计算
Mar 31 PHP
phpQuery解析HTML乱码问题(补充官网未列出的乱码解决方案)
Apr 01 #PHP
PHP控制循环操作的时间
Apr 01 #PHP
php字符串倒叙
Apr 01 #PHP
Memcached介绍及php-memcache扩展安装
PHP策略模式写法
Apr 01 #PHP
php中pcntl_fork详解
Apr 01 #PHP
php 解析非标准json、非规范json
Apr 01 #PHP
You might like
Mysql中limit的用法方法详解与注意事项
2008/04/19 PHP
几款免费开源的不用数据库的php的cms
2010/12/19 PHP
wamp安装后自定义配置的方法
2014/08/23 PHP
PHP实现批量修改文件名的方法示例
2019/09/18 PHP
javascript延时重复执行函数 lLoopRun.js
2007/06/29 Javascript
jQuery 全选效果实现代码
2009/03/23 Javascript
jQuery 表单验证扩展(三)
2010/10/20 Javascript
jQuery UI Datepicker length为空或不是对象错误的解决方法
2010/12/19 Javascript
js/jQuery对象互转(快速操作dom元素)
2013/02/04 Javascript
关于scrollLeft,scrollTop的浏览器兼容性测试
2013/03/19 Javascript
js实现网页倒计时、网站已运行时间功能的代码3例
2014/04/14 Javascript
javascript快速排序算法详解
2014/09/17 Javascript
深入探秘jquery瀑布流的实现
2016/01/30 Javascript
javascript每日必学之封装
2016/02/23 Javascript
jQuery用FormData实现文件上传的方法
2016/11/21 Javascript
浅谈html转义及防止javascript注入攻击的方法
2016/12/04 Javascript
Web 开发中Ajax的Session 超时处理方法
2017/01/19 Javascript
jQuery实现用户输入自动完成功能
2017/02/13 Javascript
详解如何在Angular优雅编写HTTP请求
2018/12/05 Javascript
vue component 中引入less文件报错 Module build failed
2019/04/17 Javascript
Vue Element校验validate的实例
2020/09/21 Javascript
VUE 项目在IE11白屏报错 SCRIPT1002: 语法错误的解决
2020/09/27 Javascript
使用Python生成随机密码的示例分享
2016/02/18 Python
Python数据操作方法封装类实例
2017/06/23 Python
Python设计模式之门面模式简单示例
2018/01/09 Python
ipython和python区别详解
2019/06/26 Python
在python image 中安装中文字体的实现方法
2019/08/22 Python
keras 两种训练模型方式详解fit和fit_generator(节省内存)
2020/07/03 Python
video下autoplay属性无效的解决方法(添加muted属性)
2020/05/19 HTML / CSS
瑰珀翠美国官网:Crabtree & Evelyn美国
2016/11/29 全球购物
高中军训感言400字
2014/02/24 职场文书
读书活动总结
2014/04/28 职场文书
安全目标管理责任书
2014/07/25 职场文书
签约仪式致辞
2015/07/30 职场文书
Spring-cloud Config Server的3种配置方式
2021/09/25 Java/Android
Python实现提取PDF简历信息并存入Excel
2022/04/02 Python