PHP实现变色验证码的方法
内容导读
收集整理的这篇技术教程文章主要介绍了PHP实现变色验证码的方法,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1583字,纯文字阅读大概需要3分钟。
内容图文
这篇文章主要介绍了关于PHP实现变色验证码的方法,有着一定的参考价值,现在分享给大家,有需要的朋友可以参考一下验证码想必大家都有见到过吧,在本文为大家介绍下PHP如何实现变色验证码,感兴趣的朋友可以参考下
<?php header("Content-type: image/png,charset='utf-8'"); $im = imagecreatetruecolor(400, 30); //白色 $white = imagecolorallocate($im, 255, 255, 255); //红色 $red = imagecolorallocate($im, 255, 0, 0); //黑色 $black=imagecolorallocate($im, 0, 0, 0); //绿色 $green=imagecolorallocate($im, 0, 255, 0); //蓝色 $blue=imagecolorallocate($im, 0, 0, 255); $color_arr=array($green,$blue,$red); $color=array_rand($color_arr); $text = '我靠这验证码太变态啦'; $textlen=iconv_strlen($text,'utf-8');//计算字符串长度 //随机截取两个字符,变色显示 $p1=rand(1,$textlen)-1; while(($p2=rand(1,$textlen)-1)==$p1); $w1=iconv_substr($text,$p1,1,'utf-8'); $w2=iconv_substr($text,$p1,1,'utf-8'); //字体文件 (PS:T不错的php Q扣峮:276167802,验证:csl) $font = 'simkai.ttf'; imagefilledrectangle($im, 0, 0, 399, 29, $white); for($i=0;$i<$textlen;$i++) { if($i==$p1||$i==$p2) { imagettftext($im, 15, 0, 20*($i-1)+20, 20, $color_arr[$color], $font, iconv_substr($text,$i,1,'utf-8')); } else { imagettftext($im, 15, 0, 20*($i-1)+20, 20, $black, $font, iconv_substr($text,$i,1,'utf-8')); } } imagepng($im); imagedestroy($im); ?>
验证码中的字符并不是同一种颜色,让用户输入指定颜色的验证码,这样安全性会更好的。
以上就是本文的全部内容,希望对大家的学习有所帮助,更多相关内容请关注PHP中文网!
相关推荐:
使用php实现加减法验证码
以上就是PHP实现变色验证码的方法的详细内容,更多请关注Gxl网其它相关文章!
内容总结
以上是为您收集整理的PHP实现变色验证码的方法全部内容,希望文章能够帮你解决PHP实现变色验证码的方法所遇到的程序开发问题。 如果觉得技术教程内容还不错,欢迎将网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。