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+dojo 的数据库保存拖动布局的一个方法dojo 这里下载
Mar 07 PHP
浅析php变量作用域的一些问题
Aug 08 PHP
PHP远程采集图片详细教程
Jul 01 PHP
PHP实现的简单日历类
Nov 29 PHP
PHP SplObjectStorage使用实例
May 12 PHP
php使用MySQL保存session会话的方法
Jun 26 PHP
深入解析PHP的Laravel框架中的event事件操作
Mar 21 PHP
CodeIgniter常用知识点小结
May 26 PHP
PHP开发制作一个简单的活动日程表Calendar
Jun 20 PHP
PHP+iframe图片上传实现即时刷新效果
Nov 18 PHP
PHP中的访问修饰符简单比较
Feb 02 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
为查询结果建立向后/向前按钮
2006/10/09 PHP
PHP 编程安全性小结
2010/01/08 PHP
解析php防止form重复提交的方法
2013/07/01 PHP
通过PHP简单实例介绍文件上传
2015/12/16 PHP
PHP基于rabbitmq操作类的生产者和消费者功能示例
2018/06/16 PHP
PHP chr()函数讲解
2019/02/11 PHP
详解CSS样式中的 !important * _ 符号
2021/03/09 HTML / CSS
jquery插件开发之实现google+圈子选择功能
2014/03/10 Javascript
jQuery实现百度登录框的动态切换效果
2017/04/21 jQuery
浅谈js使用in和hasOwnProperty获取对象属性的区别
2017/04/27 Javascript
详解VueJS 数据驱动和依赖追踪分析
2017/07/26 Javascript
详解Vue结合后台的列表增删改案例
2018/08/21 Javascript
vue .js绑定checkbox并获取、改变选中状态的实例
2018/08/24 Javascript
JS前端广告拦截实现原理解析
2020/02/17 Javascript
JS实现audio音频剪裁剪切复制播放与上传(步骤详解)
2020/07/28 Javascript
[02:49]2018DOTA2亚洲邀请赛主赛事决赛日战况回顾 Mineski鏖战5局夺得辉耀
2018/04/10 DOTA
跟老齐学Python之变量和参数
2014/10/10 Python
python机器学习理论与实战(六)支持向量机
2018/01/19 Python
Python列表常见操作详解(获取,增加,删除,修改,排序等)
2019/02/18 Python
Python3爬楼梯算法示例
2019/03/04 Python
Python中函数的基本定义与调用及内置函数详解
2019/05/13 Python
Pymysql实现往表中插入数据过程解析
2020/06/02 Python
pandas按照列的值排序(某一列或者多列)
2020/12/13 Python
美国畅销的跑步机品牌:ProForm
2017/02/06 全球购物
英国最大的在线床超市:Bed Star
2019/01/24 全球购物
优秀实习生主要事迹
2014/05/29 职场文书
最美乡村医生事迹材料
2014/06/02 职场文书
高中运动会广播稿
2014/09/16 职场文书
村长党的群众路线教育实践活动个人对照检查材料
2014/09/23 职场文书
2015年社区中秋节活动总结
2015/03/23 职场文书
公司食堂管理制度
2015/08/05 职场文书
党员电教片《信仰》心得体会
2016/01/15 职场文书
python urllib库的使用详解
2021/04/13 Python
【海涛七七解说】DCG第二周:DK VS 天禄
2022/04/01 DOTA
Python实现为PDF去除水印的示例代码
2022/04/03 Python
OpenCV项目实践之停车场车位实时检测
2022/04/11 Python