php验证码 类,php 验证码封装类

下面是我整理出来的php 验证码封装类,有兴趣的话,不妨看一看<?php

/**

*验证码封装类

*/

class CaptchaLib {

private $length;

//验证码长度

private $font=5;

//内置字体大小 1,2,3,4,5

//通过构造函数赋值

public function construct($length=4,$font=5) {

$this->length=$length;

$this->font=$font;

}

//生成随机字符串

private function generalCode() {

$char_array=array_merge(range('A','Z'),range('a','z'),range(0,9));//生成一个字母和数字的数组

$index=array_rand($char_array,$this->length);

//随机取4个字符,返回的是字符下标

shuffle($index);

//打乱下标

//拼接字符串

$str='';

foreach($index as $i) {

$str.=$char_array[$i];

}

return $str;

}

//生成验证码

public function generalCaptcha() {

$str=$this->generalCode();

//打开背景图

$bg_path='./captcha/captcha_bg'.rand(1,5).'.jpg';

//背景图地址 5张随机背景图片

$img=imagecreatefromjpeg($bg_path);

//打开图片

//定义前景色

$color=imagecolorallocate($img,0,0,0);

if(rand(1,2)==2)

$color=imagecolorallocate($img,255,255,255);

//将字符串写到图片上

$x=(imagesx($img)-imagefontwidth($this->font)*strlen($str))/2;

$y=(imagesy($img)-imagefontheight($this->font))/2;

imagestring($img,$this->font,$x,$y,$str,$color);

header('content-type:image/png');

imagepng($img);

imagedestroy($img);

}

}

//测试

$captcha=new CaptchaLib(8,4);

$captcha->generalCaptcha();

上面是我整理给大家的,希望今后会对大家有帮助。

相关文章:

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值