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自定义函数之递归删除文件及目录
Aug 08 PHP
关于php mvc开发模式的感想
Jun 28 PHP
phpexcel导入excel数据使用方法实例
Dec 24 PHP
PHP中的替代语法介绍
Jan 09 PHP
Symfony数据校验方法实例分析
Jan 26 PHP
什么是PEAR?什么是PECL?PHP中两个容易混淆的概念解释
Jul 01 PHP
基于PHP技术开发客服工单系统
Jan 06 PHP
Smarty模板常见的简单应用分析
Nov 15 PHP
简单谈谈PHP面向对象之标识对象
Jun 27 PHP
php表单文件iframe异步上传实例讲解
Jul 26 PHP
PHP Laravel中的Trait使用方法
Jan 20 PHP
php获取目录下所有文件及目录(多种方法)(推荐)
May 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
Memcache 在PHP中的使用技巧
2010/02/08 PHP
PHP隐形一句话后门,和ThinkPHP框架加密码程序(base64_decode)
2011/11/02 PHP
php采集内容中带有图片地址的远程图片并保存的方法
2015/01/03 PHP
PHP动态生成指定大小随机图片的方法
2016/03/25 PHP
Yii编程开发常见调用技巧集锦
2016/07/15 PHP
yii2简单使用less代替css示例
2017/03/10 PHP
Webkit的跨域安全问题说明
2011/09/13 Javascript
jQuery遍历Form示例代码
2013/09/03 Javascript
JavaScript包装对象使用详解
2015/07/09 Javascript
JS请求servlet功能示例
2017/06/01 Javascript
ui-router中使用ocLazyLoad和resolve的具体方法
2017/10/18 Javascript
一种angular的方法级的缓存注解(装饰器)
2018/03/13 Javascript
jQuery-ui插件sortable实现自由拖动排序
2018/12/01 jQuery
three.js实现炫酷的全景3D重力感应
2018/12/30 Javascript
mock.js实现模拟生成假数据功能示例
2019/01/15 Javascript
从0到1搭建element后台框架优化篇(打包优化)
2019/05/12 Javascript
JavaScript变量作用域及内存问题实例分析
2019/06/10 Javascript
微信小程序 如何获取网络状态
2019/07/26 Javascript
[39:08]完美世界DOTA2联赛PWL S3 LBZS vs CPG 第一场 12.12
2020/12/16 DOTA
Python写的英文字符大小写转换代码示例
2015/03/06 Python
Python的Django REST框架中的序列化及请求和返回
2016/04/11 Python
python使用电子邮件模块smtplib的方法
2016/08/28 Python
在Python中,不用while和for循环遍历列表的实例
2019/02/20 Python
python tkinter组件摆放方式详解
2019/09/16 Python
Python实现自定义读写分离代码实例
2019/11/16 Python
使用Python实现分别输出每个数组
2019/12/06 Python
Python编程快速上手——疯狂填词程序实现方法分析
2020/02/29 Python
Python正则表达式如何匹配中文
2020/05/27 Python
纯CSS3实现自定义Tooltip边框涂鸦风格的教程
2014/11/05 HTML / CSS
利用css3径向渐变做一张优惠券的示例
2018/03/22 HTML / CSS
商务日语毕业生自荐信范文
2013/11/14 职场文书
理货员的岗位职责
2013/11/23 职场文书
在校大学生个人的自我评价
2014/02/13 职场文书
毕业生工作求职信
2014/06/30 职场文书
班级光棍节联谊会策划书
2014/10/10 职场文书
Django rest framework如何自定义用户表
2021/06/09 Python