php生成酷炫的四个字符验证码


Posted in PHP onApril 22, 2016

本文实例为大家分享php生成验证码的实现代码,供大家参考,具体内容如下

<?php
$im=imagecreate(200,100);//生成画布
imagecolorallocate($im,0,0,0);//背景色
$white=imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,255));//生成随机颜色
for($i=0;$i<9;$i++)
{
 imageline($im,rand(0,200),rand(0,100),rand(0,200),rand(0,100),$white);//生成干扰线条元素
}
for($i=0;$i<150;$i++)
{
 imagesetpixel($im,rand(0,200),rand(0,100),$white);//生成干扰点元素
}
for($i=0,$str='';$i<4;$i++)//通过循环获得四个字符
{
 switch(rand(1,3))
 {
  case'1':
  $ch=rand(0,9);
  break; 
  case'2':
  $ch=sprintf('%c',rand(97,122));
  break;
  case'3':
  $ch=sprintf('%c',rand(65,90));
  break;
 }
  $str.=$ch;

}
imagettftext($im,32,rand(0,15),55,70,$white,'c.ttc',$str);//在画布上输出字符串
header("Content-type:image/jpeg");
imagejpeg($im);
imagedestroy($im);
?>

以上就是本文的全部内容,希望对大家学习PHP程序设计有所帮助。

PHP 相关文章推荐
用PHP制作静态网站的模板框架
Oct 09 PHP
PHP curl模拟浏览器采集阿里巴巴的实现代码
Apr 20 PHP
php数组函数序列之in_array() 查找数组值是否存在
Oct 29 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(六)
Jun 23 PHP
php字符比较函数similar_text、strnatcmp与strcasecmp用法分析
Nov 18 PHP
php将文本文件转换csv输出的方法
Dec 31 PHP
php上传图片客户端和服务器端实现方法
Mar 30 PHP
PHP SPL标准库中的常用函数介绍
May 11 PHP
php算法实例分享
Jul 14 PHP
php简单防盗链实现方法
Jul 29 PHP
在CentOS上搭建LAMP+vsftpd环境的简单指南
Aug 01 PHP
php上传功能集后缀名判断和随机命名(强力推荐)
Sep 10 PHP
ThinkPHP连接Oracle数据库
Apr 22 #PHP
在CentOS系统上从零开始搭建WordPress博客的全流程记录
Apr 21 #PHP
yii2 页面底部加载css和js的技巧
Apr 21 #PHP
yii2整合百度编辑器umeditor及umeditor图片上传问题的解决办法
Apr 20 #PHP
又拍云异步上传实例教程详解
Apr 19 #PHP
ThinkPHP中order()使用方法详解
Apr 19 #PHP
ThinkPHP中limit()使用方法详解
Apr 19 #PHP
You might like
php for 循环语句使用方法详细说明
2010/05/09 PHP
fsockopen pfsockopen函数被禁用,SMTP发送邮件不正常的解决方法
2015/09/20 PHP
php正则表达式基本知识与应用详解【经典教程】
2017/04/17 PHP
jquery下组织javascript代码(js函数化)
2010/08/25 Javascript
探索Emberjs制作一个简单的Todo应用
2012/11/07 Javascript
jquery 关于event.target使用的几点说明介绍
2013/04/26 Javascript
JS是按值传递还是按引用传递
2015/01/30 Javascript
jQuery关键词说明插件cluetip使用指南
2015/04/21 Javascript
js中setTimeout()与clearTimeout()用法实例浅析
2015/05/12 Javascript
AngularJS 遇到的小坑与技巧小结
2016/06/07 Javascript
过期软件破解办法实例详解
2017/01/04 Javascript
js利用for in循环获取 一个对象的所有属性以及值的实例
2017/03/30 Javascript
基于js文件加载优化(详解)
2018/01/03 Javascript
JavaScript设计模式之原型模式分析【ES5与ES6】
2018/07/26 Javascript
vue.config.js中配置Vue的路径别名的方法
2020/02/11 Javascript
JS原形与原型链深入详解
2020/05/09 Javascript
Python中每次处理一个字符的5种方法
2015/05/21 Python
深入浅析ImageMagick命令执行漏洞
2016/10/11 Python
一个基于flask的web应用诞生 用户注册功能开发(5)
2017/04/11 Python
TensorFlow实现RNN循环神经网络
2018/02/28 Python
3个用于数据科学的顶级Python库
2018/09/29 Python
python3模拟实现xshell远程执行liunx命令的方法
2019/07/12 Python
python opencv实现证件照换底功能
2019/08/19 Python
python时间与Unix时间戳相互转换方法详解
2020/02/13 Python
关于jupyter打开之后不能直接跳转到浏览器的解决方式
2020/04/13 Python
matplotlib 画双轴子图无法显示x轴的解决方法
2020/07/27 Python
美国女鞋品牌:naturalizer(娜然)
2016/08/01 全球购物
Expedia韩国官网:亚洲发展最快的在线旅游门户网站
2018/02/26 全球购物
比利时的在线灯具店:Lampen24.be
2019/07/01 全球购物
什么是Oracle的后台进程background processes?都有哪些后台进程?
2012/04/26 面试题
高中生校园生活自我评价
2013/09/19 职场文书
学习雷锋精神心得体会范文
2014/03/12 职场文书
大学生村官入党自传
2015/06/26 职场文书
外出听课学习心得体会
2016/01/15 职场文书
vue+element ui实现锚点定位
2021/06/29 Vue.js
vue router 动态路由清除方式
2022/05/25 Vue.js