本篇文章给大家介绍一下php随机生成验证码的方法。有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。
<?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视频教程
Atas ialah kandungan terperinci php如何能随机生成验证码. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!