Home  >  Article  >  php教程  >  PHP的中问验证码

PHP的中问验证码

WBOY
WBOYOriginal
2016-06-13 12:35:48919browse

复制代码 代码如下:


Class code
{
 var $width =160; //图片的宽
 var $hight =40; //图片的高
 var $image;
 var $red =223; //图片的RGB颜色
 var $green =225; //红
 var $blue =227 ;//绿
 var $pix =227 ;//蓝
 var $pixcolor; //杂色颜色;
 var $pixred = 242; //红
 var $pixgreen = 168;//绿
 var $pixblue = 162; //蓝
 var $txt=null;//验证码文字
 var $txtcode=null;
 var $txtsub=null;
 var $pixnum = 300; //杂点数量
 var $i=0;
 var $widthpx=0;
 var $highty=0;
 var $txtreg=50;
 var $txtgreen=30;
 function createimage()  //创建一张图并填色
 {
  $this->image = imagecreate($this->width,$this->hight);
  $this->color = imagecolorallocate($this->image,$this->red,$this->green,$this->blue);
  return imagefill($this->image,0,0,$this->color);
 }
 function createpix() //干扰因素
 {
  for($this->i=1;$this->ipixnum;$this->i++)
  {
    $this->widthpx = rand(0,$this->width);
    $this->highty = rand(0,$this->hight);
   $this->pixcolor = imagecolorallocate($this->image,$this->pixred,$this->pixgreen,$this->pixblue);
     imagesetpixel($this->image,$this->widthpx,$this->highty,$this->pixcolor);
  }
 }
  function gettxt() //创建验证码文字
 {
  $this->txt = array("我","爱","你","叶","就","慧","明","发","真","的","很","想","不","知","到","为","什","么","就","是","忘","不","了","你","也","许","上","辈","欠","钱");
  for($this->i=0;$this->ii++)
  {
   $this->sub = $this->txt[rand(0,29)];
   $this->txtcode.= $this->sub;
  }
  $this->txtcode = iconv("GB2312","UTF-8",$this->txtcode);
  $_SESSION["code"] = $this->txtcode; //产生的验证ID
 }
 function createstring() //创建验证码图片
 {
  imagettftext($this->image,20,5,0,40,$this->pixcolor,"C:\WINDOWS\Fonts\simsun.ttc ",$this->txtcode);
  header("content-type:image/png");
  return imagepng($this->image);
     imagedestroy($this->image);
 }
 function getcodeimage()//获得验证码图片
 {
  $this->createimage();
  $this->gettxt();
  $this->createpix();  
  $this->createstring();
 }
}
?>
session_start();   
$text = new code;
$text->createimage();
$text->gettxt();
$text->createpix();
$text->createstring();
?>

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn