code_str[mt_rand(0,strlen($this->code_st"/>
PHP头条
热点:

php验证类-PHP源码


[PHP]代码

font = "font".DIRECTORY_SEPARATOR."arial.ttf";
   }
   /*
   *验证码生成函数
   */
   private function create_code()
   {
      $code=" ";
      for($i=0;$i<$this->code_len;$i++)
	  {
	     $code.=$this->code_str[mt_rand(0,strlen($this->code_str)-1)];
	  }
	   $this->code = $code;
   }
   /*
   *得到验证码
   */
   public function getcode()
   {
      return strtoupper($this->code);
   }
   /*
   * 创建图画句柄
   */
   public function getimg()
   {
      $w = $this->width;
	  $h = $this->height;
	  $img = imagecreatetruecolor($w,$h);
	  $bg_color = imagecolorallocate($img,hexdec(substr($bg_color,1,2)),hexdec(substr($img,3,2)),hexdec(substr($img,5,2)));
	  imagefill($img,0,0,$bg_color);
	  $this->img = $img;
	  $this->create_font();
	  $this->create_pix();
	  $this->show_code();
   }
   /*
   *创建字体
   */
   public function create_font()
   {
       $this->create_code();
		$color= $this->font_color;
		$font_color = imagecolorallocate($this->img, hexdec(substr($color, 1,2)), hexdec(substr($color, 3,2)), hexdec(substr($color, 5,2)));
	    $x = $this->width/$this->code_len;
	    for($i=0;$i<$this->code_len;$i++){
	      imagettftext($this->img, $this->font_size, mt_rand(-30, 30), $x*$i+mt_rand(3,6), mt_rand($this->height/1.2,$this->height-5), $font_color, $this->font, $this->code[$i]);
	    }
	  $this->font_color = $font_color;
   }
   /*
   *写人干扰
   */
   private function create_pix()
   {
     $pix_color = $this->font_color;
	 for($i=0;$i<100;$i++)
	  {
	    imagesetpixel($this->img,mt_rand(0,$this->width),mt_rand(0,$this->height),$pix_color);
	 }
	 for($j=0;$j<2;$j++)
	 {
	    imagesetthickness($this->img,mt_rand(2,4));
		imageline($this->img,mt_rand(0,$this->width),mt_rand(0,$this->height),mt_rand(0,$this->width),mt_rand(0,$this->height),$pix_color);
	 }
   }
   /*
   *显示代码
   */
	private function show_code(){
		header("Content-type:image/png");
		imagepng($this->img);
		imagedestroy($this->img);
	}
}
?>

[PHP]代码

font = "font".DIRECTORY_SEPARATOR."arial.ttf";
   }
   /*
   *验证码生成函数
   */
   private function create_code()
   {
      $code=" ";
      for($i=0;$i<$this->code_len;$i++)
	  {
	     $code.=$this->code_str[mt_rand(0,strlen($this->code_str)-1)];
	  }
	   $this->code = $code;
   }
   /*
   *得到验证码
   */
   public function getcode()
   {
      return strtoupper($this->code);
   }
   /*
   * 创建图画句柄
   */
   public function getimg()
   {
      $w = $this->width;
	  $h = $this->height;
	  $img = imagecreatetruecolor($w,$h);
	  $bg_color = imagecolorallocate($img,hexdec(substr($bg_color,1,2)),hexdec(substr($img,3,2)),hexdec(substr($img,5,2)));
	  imagefill($img,0,0,$bg_color);
	  $this->img = $img;
	  $this->create_font();
	  $this->create_pix();
	  $this->show_code();
   }
   /*
   *创建字体
   */
   public function create_font()
   {
       $this->create_code();
		$color= $this->font_color;
		$font_color = imagecolorallocate($this->img, hexdec(substr($color, 1,2)), hexdec(substr($color, 3,2)), hexdec(substr($color, 5,2)));
	    $x = $this->width/$this->code_len;
	    for($i=0;$i<$this->code_len;$i++){
	      imagettftext($this->img, $this->font_size, mt_rand(-30, 30), $x*$i+mt_rand(3,6), mt_rand($this->height/1.2,$this->height-5), $font_color, $this->font, $this->code[$i]);
	    }
	  $this->font_color = $font_color;
   }
   /*
   *写人干扰
   */
   private function create_pix()
   {
     $pix_color = $this->font_color;
	 for($i=0;$i<100;$i++)
	  {
	    imagesetpixel($this->img,mt_rand(0,$this->width),mt_rand(0,$this->height),$pix_color);
	 }
	 for($j=0;$j<2;$j++)
	 {
	    imagesetthickness($this->img,mt_rand(2,4));
		imageline($this->img,mt_rand(0,$this->width),mt_rand(0,$this->height),mt_rand(0,$this->width),mt_rand(0,$this->height),$pix_color);
	 }
   }
   /*
   *显示代码
   */
	private function show_code(){
		header("Content-type:image/png");
		imagepng($this->img);
		imagedestroy($this->img);
	}
}
?>

www.phpzy.comtrue/phpyy/43895.htmlTechArticlephp验证类-PHP源码 [PHP]代码 font = "font".DIRECTORY_SEPARATOR."arial.ttf"; } /* *验证码生成函数 */ private function create_code() { $code=" "; for($i=0;$i code_len;$i++) { $code.=$this->code_str[mt_rand(0,strlen($this->code_st...

相关文章

PHP之友评论

今天推荐