php图片验证码代码


Posted in PHP onMarch 27, 2008
<?php 
    //文件头... 
    header("Content-type: image/png"); 
    //创建真彩色白纸 
    $im = @imagecreatetruecolor(50, 20) or die("建立图像失败"); 
    //获取背景颜色 
    $background_color = imagecolorallocate($im, 255, 255, 255); 
    //填充背景颜色(这个东西类似油桶) 
    imagefill($im,0,0,$background_color); 
    //获取边框颜色 
    $border_color = imagecolorallocate($im,200,200,200); 
    //画矩形,边框颜色200,200,200 
    imagerectangle($im,0,0,49,19,$border_color);     //逐行炫耀背景,全屏用1或0 
    for($i=2;$i<18;$i++){ 
        //获取随机淡色         
        $line_color = imagecolorallocate($im,rand(200,255),rand(200,255),rand(200,255)); 
        //画线 
        imageline($im,2,$i,47,$i,$line_color); 
    } 
    //设置字体大小 
    $font_size=12; 
    //设置印上去的文字 
    $Str[0] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ"; 
    $Str[1] = "abcdefghijklmnopqrstuvwxyz"; 
    $Str[2] = "01234567891234567890123456"; 
    //获取第1个随机文字 
    $imstr[0]["s"] = $Str[rand(0,2)][rand(0,25)]; 
    $imstr[0]["x"] = rand(2,5); 
    $imstr[0]["y"] = rand(1,4); 
    //获取第2个随机文字 
    $imstr[1]["s"] = $Str[rand(0,2)][rand(0,25)]; 
    $imstr[1]["x"] = $imstr[0]["x"]+$font_size-1+rand(0,1); 
    $imstr[1]["y"] = rand(1,3); 
    //获取第3个随机文字 
    $imstr[2]["s"] = $Str[rand(0,2)][rand(0,25)]; 
    $imstr[2]["x"] = $imstr[1]["x"]+$font_size-1+rand(0,1); 
    $imstr[2]["y"] = rand(1,4); 
    //获取第4个随机文字 
    $imstr[3]["s"] = $Str[rand(0,2)][rand(0,25)]; 
    $imstr[3]["x"] = $imstr[2]["x"]+$font_size-1+rand(0,1); 
    $imstr[3]["y"] = rand(1,3); 
    //写入随机字串 
    for($i=0;$i<4;$i++){ 
        //获取随机较深颜色 
        $text_color = imagecolorallocate($im,rand(50,180),rand(50,180),rand(50,180)); 
        //画文字 
        imagechar($im,$font_size,$imstr[$i]["x"],$imstr[$i]["y"],$imstr[$i]["s"],$text_color); 
    } 
    //显示图片 
    imagepng($im); 
    //销毁图片 
    imagedestroy($im); 
?>
PHP 相关文章推荐
php下使用SimpleXML 处理XML 文件
Feb 27 PHP
php中数字0和空值的区别分析
Jun 05 PHP
ThinkPHP3.1.3版本新特性概述
Jun 19 PHP
php单文件版在线代码编辑器
Mar 12 PHP
php+ajax实现无刷新的新闻留言系统
Dec 21 PHP
Yii2框架引用bootstrap中日期插件yii2-date-picker的方法
Jan 09 PHP
Thinkphp3.2.3分页使用实例解析
Jul 28 PHP
php smtp实现发送邮件功能
Jun 22 PHP
php+javascript实现的动态显示服务器运行程序进度条功能示例
Aug 07 PHP
搜索附近的人PHP实现代码
Feb 11 PHP
php基于 swoole 实现的异步处理任务功能示例
Aug 13 PHP
浅谈laravel框架sql中groupBy之后排序的问题
Oct 17 PHP
几个php应用技巧
Mar 27 #PHP
PHP详细彻底学习Smarty
Mar 27 #PHP
php中用文本文件做数据库的实现方法
Mar 27 #PHP
Discuz! Passport 通行证整合
Mar 27 #PHP
FCKeditor添加自定义按钮
Mar 27 #PHP
php,ajax实现分页
Mar 27 #PHP
PHP 5.0对象模型深度探索之类的静态成员
Mar 27 #PHP
You might like
IIS下配置Php+Mysql+zend的图文教程
2006/12/08 PHP
非集成环境的php运行环境(Apache配置、Mysql)搭建安装图文教程
2016/04/12 PHP
javascript阻止浏览器后退事件防止误操作清空表单
2013/11/22 Javascript
window.location不跳转的问题解决方法
2014/04/17 Javascript
NodeJS学习笔记之Connect中间件模块(一)
2015/01/27 NodeJs
浅谈类似于(function(){}).call()的js语句
2015/03/30 Javascript
Node.js返回JSONP详解
2016/05/18 Javascript
js获取时间函数及扩展函数的方法
2016/10/30 Javascript
js实现文字选中分享功能
2017/01/25 Javascript
利用Angular+Angular-Ui实现分页(代码加简单)
2017/03/10 Javascript
微信小程序动态显示项目倒计时效果
2017/06/13 Javascript
dropload.js插件下拉刷新和上拉加载使用详解
2017/10/20 Javascript
jackson解析json字符串,首字母大写会自动转为小写的方法
2017/12/22 Javascript
Express进阶之log4js实用入门指南
2018/02/10 Javascript
JavaScript求一组数的最小公倍数和最大公约数常用算法详解【面向对象,回归迭代和循环】
2018/05/07 Javascript
vue canvas绘制矩形并解决由clearRec带来的闪屏问题
2019/09/02 Javascript
Python进程间通信用法实例
2015/06/04 Python
简单介绍Python的Django框架加载模版的方式
2015/07/20 Python
Python 详解基本语法_函数_返回值
2017/01/22 Python
Django实现自定义404,500页面教程
2017/03/26 Python
python脚本爬取字体文件的实现方法
2017/04/29 Python
Python将list中的string批量转化成int/float的方法
2018/06/26 Python
解决python ogr shp字段写入中文乱码的问题
2018/12/31 Python
python实现静态web服务器
2019/09/03 Python
解决python ThreadPoolExecutor 线程池中的异常捕获问题
2020/04/08 Python
好的自荐信包括什么内容
2013/11/07 职场文书
大学毕业生的自我鉴定
2013/11/30 职场文书
班会关于环保演讲稿
2013/12/29 职场文书
应聘护理专业毕业自荐书范文
2014/02/12 职场文书
单位委托书怎么写
2014/08/02 职场文书
党的群众路线教育实践活动查摆剖析材料
2014/10/10 职场文书
2015年医院工作总结范文
2015/04/09 职场文书
goland设置颜色和字体的操作
2021/05/05 Golang
springboot集成springCloud中gateway时启动报错的解决
2021/07/16 Java/Android
Python内置类型集合set和frozenset的使用详解
2022/04/26 Python
输入框跟随文字内容适配宽实现示例
2022/08/14 Javascript