三种php汉字英文验证代码生成程序(1/4)

 代码如下 复制代码
$ChineseChar = explode(',',"人,出,来,友,学,孝,仁,义,礼,廉,忠,国,中,易,白,者,火 ,王,金,木,雷,风,龙,虎,天,地, 生,晕,菜,鸟,田,三,百,钱,福 ,爱,情,兽,虫,鱼,九,网,新,度,哎,唉,啊,哦,仪,老,少,日, 月 ,星,肯,各,程");
$k[0]=$ChineseChar[array_rand($ChineseChar)];
$k[1]=$ChineseChar[array_rand($ChineseChar)];
$k[2]=$ChineseChar[array_rand($ChineseChar)];
$k[3]=$ChineseChar[array_rand($ChineseChar)];
$cookie_str=implode('', $k);
setcookie('vrify',md5($cookie_str),time()+600);
$str[0]=iconv('gb2312','UTF-8',$k[0]);
$str[1]=iconv('gb2312','UTF-8',$k[1]);
$str[2]=iconv('gb2312','UTF-8',$k[2]);
$str[3]=iconv('gb2312','UTF-8',$k[3]);
//构造图像
$x_size=100;
$y_size=25;
$font='simhei.ttf';
$pic=imagecreate($x_size,$y_size);
$background_color = imagecolorallocate ($pic, 255, 255, 255);
$foregroundArr = array(imagecolorallocate($pic, rand(0, 20), rand(0, 20), rand(0, 20)),
                                      imagecolorallocate($pic, rand(0, 20), rand(0, 10), rand(245, 255)),
                                      imagecolorallocate($pic, rand(245, 255), rand(0, 20), rand(0, 10)),
                                      imagecolorallocate($pic, rand(245, 255), rand(0, 20), rand(245, 255)));
imagettftext($pic,mt_rand(12,15),mt_rand(-8,8),6,mt_rand(19,22),$foregroundArr[rand(0,3)],$font,$str[0]);
imagettftext($pic,mt_rand(15,17),mt_rand(-8,8),26,20,$foregroundArr[rand(0,3)],$font,$str[1]);
imagettftext($pic,mt_rand(12,15),mt_rand(-8,8),46,20,$foregroundArr[rand(0,3)],$font,$str[2]);
imagettftext($pic,mt_rand(15,17),mt_rand(-8,8),66,mt_rand(19,22),$foregroundArr[rand(0,3)],$font,$str[3]);
for ($i=0;$i<80;$i++)
       {
       $pointcol = imagecolorallocate($pic, rand(0,255), rand(0,255), rand(0,255));
              imagesetpixel($pic,rand(2,$x_size-2),rand(2,$y_size-2),$pointcol);
       }
$border = imagecolorallocate($pic, 133, 153, 193);
imagerectangle($pic, 0, 0, $x_size - 1, $y_size - 1,$border);
imagepng($pic);
imagedestroy($pic);
?>

 

首页 1 2 3 4 末页

时间: 2024-08-01 14:21:08

三种php汉字英文验证代码生成程序(1/4)的相关文章

三种php汉字英文验证代码生成程序

三种php教程汉字英文验证代码生成程序 $ChineseChar = explode(',',"人,出,来,友,学,孝,仁,义,礼,廉,忠,国,中,易,白,者,火 ,王,金,木,雷,风,龙,虎,天,地, 生,晕,菜,鸟,田,三,百,钱,福 ,爱,情,兽,虫,鱼,九,网,新,度,哎,唉,啊,哦,仪,老,少,日, 月 ,星,肯,各,程"); $k[0]=$ChineseChar[array_rand($ChineseChar)]; $k[1]=$ChineseChar[array_rand

Java中三种简单注解介绍和代码实例_java

简单Java注解 JDK5提供的简单注解类型只有3个. 这三个都是用来预防错误或者进行提醒的,分别是: 1.Override 2.Deprecated 3.Suppresswarnings 需要注意,JDK5(另一个说法,Tiger)实际上并没有许多内置注解;相反,它允许核心Java支持注解特性的能力. JSR-175中严格规定它用来定义元数据功能. 需要由程序员编写自定义的注解类型,其他JSR标准也编写了一系列标准注解类型. 下面将用实例来深入讲解这三个简单注解. Override 注解 Ov

三种js 去除重复项代码

<script language="网页特效"> <!-- var stra="1,2,3,4,5,6,7"; var strb="2,0,4,6,8,9"; //需要剔除2,4,6三个元素 var str=stra+","+strb; var strarr=str.split(","); //排序 strarr.sort(); var result=new array(); var te

JavaScript 三种不同位置代码的写法_javascript技巧

下面列举在三种不同的地方写JavaScript代码,实现的效果都是点击按钮button弹出alert警告框 第一种是最常见的,代码如下 html代码 <input type="button" value="按钮1" id="btn1" onclick="pop()"> js代码 function pop() { alert("在JavaScript函数处调用"); } 第二种是最简单的实现方式,

Java的三种代理模式简述

Java的三种代理模式简述 本文着重讲述三种代理模式在java代码中如何写出,为保证文章的针对性,暂且不讨论底层实现原理,具体的原理将在下一篇文章中讲述. 代理模式是什么 代理模式是一种设计模式,简单说即是在不改变源码的情况下,实现对目标对象的功能扩展. 比如有个歌手对象叫Singer,这个对象有一个唱歌方法叫sing(). 假如你希望,通过你的某种方式生产出来的歌手对象,在唱歌前后还要想观众问好和答谢,也即对目标对象Singer的sing方法进行功能扩展. 但是往往你又不能直接对源代码进行修改

Android中通过外部程序启动App的三种方法_Android

第一种:直接通过包名: 复制代码 代码如下: Intent LaunchIntent = getPackageManager().getLaunchIntentForPackage("com.joyodream.jiji");                 startActivity(LaunchIntent); 第二种:通过自定义的Action 复制代码 代码如下: Intent intent = new Intent();                 intent.setAc

js判断数字,字母,中文与三种混合验证函数

<!--网页特效判断数字,字母,中文与三种混合验证函数 第一款是利用js 的用户名验证函数,他验证了用户名只允许为英文,数字和汉字的混合,后面单独对js判断数字,字母,中文的函数 <!doctype html public "-//w3c//dtd xhtml 1.0 transitional//en" "http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd"> <html xmlns

汉字的三种字型结构

  根据构成汉字的各字根之间的位置关系,可以把汉字分为三种类型:即左右型.上下型.杂合型.按照它们拥有汉字的字数多少,我们把左右型命名为1型,代号为1;上下型命名为2型,代号为2;杂合型命名为3型,代号为3. 纵观汉字的字型分析与结构分析,我们可以归纳如下: 1.基本字根单独成字,在将来的取码中有专门的规定,因而不需要判断字型; 2.属于"散"的汉字,才可能有左右,上下型; 3.属于"连"."交"或"混合"的汉字,属于杂合型;

提供第三种代码生成方式——通过自定义BuildProvider为ASP.NET提供代码生成

之前写了一些关于代码生成的文章,提供了两种不同方式的代码生成解决方案,即CodeDOM+Custom Tool和T4.对于ASP.NET应用,你还有第三种选择--自定义BuildProvider.[文中涉及的源代码从这里下载] 目录 一.BuildProvider是什么? 二.将XML表示的消息转换成VB.NET或者C#代码 三.将XML转换成CodeDOM 四.自定义BuildProvider 五.BuildProvider的应用 一.BuildProvider是什么? 对于ASP.NET应用