首页 > php教程 > php手册 > PHP验证码代码的方法

PHP验证码代码的方法

WBOY
发布: 2016-06-13 09:33:31
原创
1275 人浏览过

   小编就为大家分享一个漂亮的php验证码类。需要的朋友可以过来参考下!

  php验证码类代码

  width=$width;

  $this->height=$height;

  $this->counts=$counts;

  $this->distrubcode=$distrubcode;

  $this->fonturl=$fonturl;

  $this->session=$this->sessioncode();

  session_start();

  $_SESSION["code"]=$this->session;

  }

  function imageout(){

  $im=$this->createimagesource();

  $this->setbackgroundcolor($im);

  $this->set_code($im);

  $this->setdistrubecode($im);

  ImageGIF($im);

  ImageDestroy($im);

  }

  private function createimagesource(){

  return imagecreate($this->width,$this->height);

  }

  private function setbackgroundcolor($im){

  $bgcolor = ImageColorAllocate($im, rand(200,255),rand(200,255),rand(200,255));//±3?°??é?

  imagefill($im,0,0,$bgcolor);

  }

  private function setdistrubecode($im){

  $count_h=$this->height;

  $cou=floor($count_h*2);

  for($i=0;$i

  $x=rand(0,$this->width);

  $y=rand(0,$this->height);

  $jiaodu=rand(0,360);

  $fontsize=rand(8,15);

  $fonturl=$this->fonturl;

  $originalcode = $this->distrubcode;

  $countdistrub = strlen($originalcode);

  $dscode = $originalcode[rand(0,$countdistrub-1)];

  $color = ImageColorAllocate($im, rand(40,140),rand(40,140),rand(40,140));

  imagettftext($im,$fontsize,$jiaodu,$x,$y,$color,$fonturl,$dscode);

  }

  }

  private function set_code($im){

  $width=$this->width;

  $counts=$this->counts;

  $height=$this->height;

  $scode=$this->session;

  $y=floor($height/2)+floor($height/4);

  $fontsize=rand(30,35);

  $fonturl="C:\Windows\Fonts\AdobeGothicStd-Bold.otf";//$this->fonturl;

  $counts=$this->counts;

  for($i=0;$i

  $char=$scode[$i];

  $x=floor($width/$counts)*$i+8;

  $jiaodu=rand(-20,30);

  $color = ImageColorAllocate($im,rand(0,50),rand(50,100),rand(100,140));

  imagettftext($im,$fontsize,$jiaodu,$x,$y,$color,$fonturl,$char);

  }

  }

  private function sessioncode(){

  $originalcode = $this->distrubcode;

  $countdistrub = strlen($originalcode);

  $_dscode = "";

  $counts=$this->counts;

  for($j=0;$j

  $dscode = $originalcode[rand(0,$countdistrub-1)];

  $_dscode.=$dscode;

  }

  return $_dscode;

  }

  }

  PHP验证码代码实例示范 建一个输出文件代码:

  Header("Content-type: image/GIF");

  $imagecode=new Imagecode(150,2);

  $imagecode->imageout();

  PHP验证码类就这么简单,可以用了!

  源码。

来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门推荐
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板