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 相关文章推荐
IIS下配置Php+Mysql+zend的图文教程
Dec 08 PHP
如何用php获取程序执行的时间
Jun 09 PHP
基于PHP中的常用函数回顾
Jul 11 PHP
PHP中spl_autoload_register()和__autoload()区别分析
May 10 PHP
php获取apk包信息的方法
Aug 15 PHP
PHP生成条形图的方法
Dec 10 PHP
PHP实现路由映射到指定控制器
Aug 13 PHP
PHP+mysql实现从数据库获取下拉树功能示例
Jan 06 PHP
PHP实现搜索时记住状态的方法示例
May 11 PHP
PHP程序员学习使用Swoole的理由
Jun 24 PHP
使用 PHP Masked Package 屏蔽敏感数据的实现方法
Oct 15 PHP
TP5框架实现自定义分页样式的方法示例
Apr 05 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
要会喝咖啡也要会知道咖啡豆
2021/03/03 咖啡文化
php在window iis的莫名问题的测试方法
2013/05/14 PHP
PHP生成迅雷、快车、旋风等软件的下载链接代码实例
2014/05/12 PHP
PHP实现二维数组按某列进行排序的方法
2016/11/18 PHP
PHPExcel在linux环境下导出报500错误的解决方法
2017/01/26 PHP
yii框架结合charjs统计上一年与当前年数据的方法示例
2020/04/04 PHP
执行iframe中的javascript方法
2008/10/07 Javascript
jQuery chili图片远处放大插件
2009/11/30 Javascript
jquery实现文本框数量加减功能的例子分享
2014/05/10 Javascript
Javascript动态引用CSS文件的2种方法介绍
2014/06/06 Javascript
一个仿糯米弹框效果demo
2014/07/22 Javascript
推荐 21 款优秀的高性能 Node.js 开发框架
2014/08/18 Javascript
通过jquery-ui中的sortable来实现拖拽排序的简单实例
2016/05/24 Javascript
JavaScript九九乘法口诀表的简单实现
2016/10/04 Javascript
微信小程序-横向滑动scroll-view隐藏滚动条
2017/04/20 Javascript
使用jquery+iframe做一个ajax上传效果(实例)
2017/08/24 jQuery
ui-router中使用ocLazyLoad和resolve的具体方法
2017/10/18 Javascript
javaScript canvas实现(画笔大小 颜色 橡皮的实例)
2017/11/28 Javascript
jQuery+koa2实现简单的Ajax请求的示例
2018/03/06 jQuery
JavaScript分步实现一个出生日期的正则表达式
2018/03/22 Javascript
ES6基础之解构赋值(destructuring assignment)
2019/02/21 Javascript
小程序卡片切换效果组件wxCardSwiper的实现
2020/02/13 Javascript
[01:13:51]TNC vs Serenity 2018国际邀请赛小组赛BO2 第二场 8.18
2018/08/19 DOTA
python列表与元组详解实例
2013/11/01 Python
Python实现竖排打印传单手机号码易撕条
2015/03/16 Python
python让列表倒序输出的实例
2018/06/25 Python
django2.0扩展用户字段示例
2019/02/13 Python
postman模拟访问具有Session的post请求方法
2019/07/15 Python
Python Django 实现简单注册功能过程详解
2019/07/29 Python
Python脚本打包成可执行文件过程解析
2020/10/20 Python
一款恶搞头像特效的制作过程 利用css3和jquery
2014/11/21 HTML / CSS
澳大利亚儿童和婴儿产品在线商店:Lime Tree Kids
2017/10/05 全球购物
趣味运动会通讯稿
2015/07/18 职场文书
环境卫生整治简报
2015/07/20 职场文书
关于公司年会的开幕词
2016/03/04 职场文书
三星 3nm 芯片将于第二季度开始量产
2022/04/29 数码科技