PHP验证码代码_php验证码类

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

php验证码类代码

<?php	class Imagecode{		private $width ;		private $height;		private $counts;		private $distrubcode;		private $fonturl;		private $session;		function __construct($width = 120,$height = 30,$counts = 5,$distrubcode="1235467890qwertyuipkjhgfdaszxcvbnm",$fonturl="C:\Windows\Fonts\TektonPro-BoldCond.otf"){			$this->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<$cou;$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<$counts;$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<$counts;$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验证码类就这么简单,可以用了!

源码。



郑重声明:本文版权包含图片归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们(delete@yzlfxy.com)修改或删除,多谢。

郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。

留言与评论(共有 0 条评论)
昵称:
匿名发表
   
验证码: