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));//±³¾°ÑÕÉ«
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;
}
}
Header("Content-type: image/GIF");
$imagecode=new Imagecode(160,50);
$imagecode->imageout();
分享到:
相关推荐
PHP入门培训教程PHP培训教程PHP基础教程GD库图像处理PPT教案.pptx
分享一个漂亮的php验证码类。 使用方法: 1、先把验证码类保存为一个名为 ValidateCode.class.php 的文件; 2、新建一个名为 captcha.php 的文件进行调用该类;
漂亮的php验证码,包含支持多字体,字母验证码,数字验证码,经过改进的支持多字体的php验证码,很清爽的感觉,也很大气,适合做商业网站开发插件,同时过滤了几个容易混淆的数字与字母。
PHP入门培训教程PHP MVC框架核心类.pdf
php中文验证码类 php验证码类 php验证码
漂亮的php 验证码 使用运行page.php
php实用验证码一例 php实用验证码一例 php实用验证码一例
PHP入门PHP教程.rarPHP入门PHP教程.rarPHP入门PHP教程.rarPHP入门PHP教程.rarPHP入门PHP教程.rar
几款用php写的漂亮的验证码!目录下有3个php文件,每个都是一种验证码,直接运行文件即可!
php,验证码,汉字验证码,PHP汉字验证码
《PHP从入门到精通》从初学者角度出发,通过通俗易懂的语言,丰富多彩的实例,详细介绍了使用PHP进行网络开发应该掌握的各方面...PHP入门教程 CHM 中文手册,使用很方便~ 让php初学者,找到学习的好方法,就1分,来吧。
本文件包括两本PHP初级入门教程,都是网上热门的教程,
PHP入门教程CHM版 自学参考资料·
PHP初级教程(PHP入门教程) 一周让你精通php
php 验证码 源码 范例 简单 基础 入门
php 入门教程 php 入门教程 php 入门教程 php 入门教程 php 入门教程 php 入门教程 php 入门教程 php 入门教程 php 入门教程 php 入门教程 php 入门教程
PHP入门教程,快速入门基础教程,推荐大家看看。
PHP100视频教程45:如何用PHP开发一个完整的网站 PHP100视频教程46:PHPMyAdmin功能操作详解 PHP100视频教程47:PHP输出CSV和EXCEL两种简单的方法 PHP100视频教程48:Ajax+PHP快速上手及应用 PHP100视频教程49:...
php精美10个验证码
PHP十天入门教程PHP十天入门教程PHP十天入门教程PHP十天入门教程PHP十天入门教程