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 相关文章推荐
php中常用编辑器推荐
Jan 02 PHP
PHP 解决session死锁的方法
Jun 20 PHP
解析PHP中VC6 X86和VC9 X86的区别及 Non Thread Safe的意思
Jun 28 PHP
深入解析Session是否必须依赖Cookie
Aug 02 PHP
php操作mysqli(示例代码)
Oct 28 PHP
PHP迭代器的内部执行过程详解
Nov 12 PHP
PHP异常Parse error: syntax error, unexpected T_VAR错误解决方法
May 06 PHP
php多个文件及图片上传实例详解
Nov 10 PHP
CI框架数据库查询之join用法分析
May 18 PHP
详解Laravel视图间共享数据与视图Composer
Aug 04 PHP
php 后端实现JWT认证方法示例
Sep 04 PHP
PHP count_chars()函数讲解
Feb 14 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
php读取msn上的用户信息类
2008/12/05 PHP
PHP Mysqli 常用代码集合
2016/11/12 PHP
javascript获取本机操作系统类型的方法
2015/08/13 Javascript
jquery UI Datepicker时间控件的使用方法(终结版)
2015/11/07 Javascript
三种带箭头提示框总结实例
2016/06/14 Javascript
微信小程序 获取二维码实例详解
2017/06/23 Javascript
React Native之prop-types进行属性确认详解
2017/12/19 Javascript
Koa2微信公众号开发之本地开发调试环境搭建
2018/05/16 Javascript
layui中使用jquery控制radio选中事件的示例代码
2018/08/15 jQuery
解决jquery有正确返回值但不执行success函数的问题
2018/08/20 jQuery
JS隐藏号码中间4位代码实例
2019/04/09 Javascript
Vue实现多标签选择器
2019/11/28 Javascript
vue用elementui写form表单时,在label里添加空格操作
2020/08/13 Javascript
构建一个JavaScript插件系统
2020/10/20 Javascript
python if not in 多条件判断代码
2016/09/21 Python
python编程之requests在网络请求中添加cookies参数方法详解
2017/10/25 Python
Django contenttypes 框架详解(小结)
2018/08/13 Python
python单向链表的基本实现与使用方法【定义、遍历、添加、删除、查找等】
2019/10/24 Python
浅析Python数字类型和字符串类型的内置方法
2019/12/22 Python
使用Python来做一个屏幕录制工具的操作代码
2020/01/18 Python
Python实现随机生成任意数量车牌号
2020/01/21 Python
python实现音乐播放器 python实现花框音乐盒子
2020/02/25 Python
python Matplotlib数据可视化(1):简单入门
2020/09/30 Python
CSS3 3D立方体效果示例-transform也不过如此
2016/12/05 HTML / CSS
Speedo速比涛中国官方网站:全球领先泳装运动品牌
2018/04/24 全球购物
学员自我鉴定
2014/03/19 职场文书
安全生产演讲稿
2014/05/09 职场文书
大学生就业自荐书
2014/06/16 职场文书
争先创优演讲稿
2014/09/15 职场文书
2015年度物流工作总结
2015/04/30 职场文书
2016秋季校长开学典礼致辞
2015/11/26 职场文书
银行工作心得体会范文
2016/01/23 职场文书
85句关于理想的名言警句大全
2019/08/22 职场文书
IDEA 链接Mysql数据库并执行查询操作的完整代码
2021/05/20 MySQL
js Proxy的原理详解
2021/05/25 Javascript
MySQL一些常用高级SQL语句
2021/07/03 MySQL