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极大的增强功能和性能
Oct 09 PHP
用php写的serv-u的web申请账号的程序
Oct 09 PHP
php 动态执行带有参数的类方法
Apr 10 PHP
PHP跨时区(UTC时间)应用解决方案
Jan 11 PHP
php操作xml入门之xml基本介绍及xml标签元素
Jan 23 PHP
Symfony控制层深入详解
Mar 17 PHP
php socket通信简单实现
Nov 18 PHP
PHP自动生成缩略图函数的源码示例
Mar 18 PHP
PHP+mysql防止SQL注入的方法小结
Apr 27 PHP
Yii2 queue的队列使用详解
Jul 19 PHP
php设计模式之模板模式实例分析【星际争霸游戏案例】
Mar 24 PHP
PHP如何通过date() 函数格式化显示时间
Nov 13 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
在PHP中使用XML
2006/10/09 PHP
社区(php&amp;&amp;mysql)六
2006/10/09 PHP
PHP学习之数组的定义和填充
2011/04/17 PHP
PHP文件上传原理简单分析
2011/05/29 PHP
2014过年倒计时示例
2014/01/31 PHP
PHP文件大小格式化函数合集
2014/03/10 PHP
解决PhpMyAdmin中导入2M以上大文件限制的方法分享
2014/06/06 PHP
php生成短域名函数
2015/03/23 PHP
php结合ajax实现手机发红包的案例
2016/10/13 PHP
JavaScript 仿关机效果的图片层
2008/12/26 Javascript
zShowBox 图片放大展示jquery版 兼容性
2011/09/24 Javascript
禁用Enter键表单自动提交实现代码
2014/05/22 Javascript
Node.js中require的工作原理浅析
2014/06/24 Javascript
实时监控input框,实现输入框与下拉框联动的实例
2018/01/23 Javascript
vue 不使用select实现下拉框功能(推荐)
2018/05/17 Javascript
解决jquery有正确返回值但不执行success函数的问题
2018/08/20 jQuery
使用jQuery mobile NuGet让你的网站在移动设备上同样精彩
2019/06/18 jQuery
JS实现json数组排序操作实例分析
2019/10/28 Javascript
jQuery 图片查看器插件 Viewer.js用法简单示例
2020/04/04 jQuery
浅谈JavaScript中你可能不知道URL构造函数的属性
2020/07/13 Javascript
[01:24:51]2014 DOTA2华西杯精英邀请赛 5 25 LGD VS NewBee第二场
2014/05/26 DOTA
初学Python实用技巧两则
2014/08/29 Python
python实现植物大战僵尸游戏实例代码
2019/06/10 Python
简单了解python 邮件模块的使用方法
2019/07/24 Python
使用 python pyautogui实现鼠标键盘控制功能
2019/08/04 Python
在python中创建指定大小的多维数组方式
2019/11/28 Python
用python爬虫批量下载pdf的实现
2020/12/01 Python
澳大利亚网上买书:Angus & Robertson
2019/07/21 全球购物
Hibernate持久层技术
2013/12/16 面试题
英文求职信结束语大全
2013/10/26 职场文书
研究生考核个人自我鉴定
2014/03/27 职场文书
大学新学期计划书
2014/04/28 职场文书
2014年办公室文秘工作总结
2014/12/09 职场文书
保安辞职申请书应该怎么写?
2019/07/15 职场文书
Golang 对es的操作实例
2022/04/20 Golang
mysql性能优化以及配置连接参数设置
2022/05/06 MySQL