您的位置:首页 > 编程语言 > PHP开发

php绘制验证码

2016-06-30 07:34 309 查看
<?php

//定义格式,设置编码

header("content-type:text/html;charset=utf-8");

//创建一个图片,长宽

$img=imagecreatetruecolor(120, 40);

//创建颜色,为$img对象;后三个数值为颜色三基色代码

$red=imagecolorallocate($img, 255,0, 0);

$green=imagecolorallocate($img, 0, 255, 0);

$blue=imagecolorallocate($img, 0, 0, 255);

$color=imagecolorallocate($img, 255, 255, 0);

$color2=imagecolorallocate($img, 255, 0, 255);

//填充

imagefill($img, 0, 0, $color);

//绘制干扰线

for ($i=0; $i <10; $i++) {

 imageline($img, rand(0,120), rand(0,40), rand(0,100), rand(0,20), $red);

}

//绘制干扰点

for ($j=0; $j <50 ; $j++) {

 imagesetpixel($img, rand(0,120), rand(0,20), $color2);

}

//添加文字

//imagestring($img, 5, 10, 20, "0987", $green);

$str="eeywtuwaweryqeyr";//一串随机数字

$str=str_shuffle($str);//将该字串打乱顺序

$vcode=substr($str, 0,4);//取前4个

for ($m=0; $m <4; $m++) {

 $color2=imagecolorallocate($img, 255, 0, 255);//创建颜色,为$img对象

 imagettftext($img, 20, rand(30,-30),($m*20+10) , 25, $color2, 'verdana.ttf', $vcode[$m]);//'verdana.ttf'为字体格式,//在c盘中,搜索中输入*.ttf;出现很多拓展名为ttf的文件,随便选择一个,将其放在跟调用该字体格式的php文件同一个目录下。

}

//设置格式,生成验证码

header("content-type:image/jpeg");

imagejpeg($img);

//销毁图片,释放资源

imagedestroy($img);

 ?>

//在c盘中,搜索中输入*.ttf;出现很多拓展名为ttf的文件,随便选择一个,将其放在跟调用该字体格式的php文件同一个目录下
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  php 验证码 函数