您好,登录后才能下订单哦!
密码登录
登录注册
点击 登录注册 即表示同意《亿速云用户服务条款》
PHP中怎么实现验证码,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。
<?php //将验证码保存到session里,供全局使用 session_start(); $nums = ""; for($i=0;$i<4;$i++){ //产生随机数并转换成十六进制 $nums.=dechex(mt_rand(0,15)); } //将验证码写入session $_SESSION['code']=$nums; //设置验证码长和宽 $_width = 60; $_height = 20; //创建一张图片 $_img = imagecreatetruecolor($_width,$_height); //创建一个白色 $_white = imagecolorallocate($_img,220,250,250); //填充背景 imagefill($_img,0,0,$_white); //随机画6条线条 for($i=0;$i<6;$i++){ $_rnd_color = imagecolorallocate($_img,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255)); imageline($_img,mt_rand(0,$_width),mt_rand(0,$_width),mt_rand(0,$_width),mt_rand(0,$_width),$_rnd_color); } //随机画出雪花 for($i=0;$i<60;$i++){ imagestring($_img,1,mt_rand(1,$_width),mt_rand(1,$_height),"*",imagecolorallocate($_img,mt_rand(200,255),mt_rand(200,255),mt_rand(200,255))); } //输出验证码 for($i=0;$i<strlen($_SESSION['code']);$i++){ imagestring($_img,mt_rand(6,10),$i*$_width/4+mt_rand(1,10),mt_rand(1,$_height/2),$_SESSION['code'][$i],imagecolorallocate($_img,mt_rand(0,100),mt_rand(0,150),mt_rand(0,200))); } //输出和销毁 header("Content-Type:image/png"); imagepng($_img); imagedestroy($_img); ?>
看完上述内容,你们掌握PHP中怎么实现验证码的方法了吗?如果还想学到更多技能或想了解更多相关内容,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。