6.4 Captcha(验证码)使用说明

DoitPHP扩展类Captcha用于验证码图片的生成,与验证码的验证 分析 。

类方法使用说明:

1、show($imageUrl = null)

显示验证码。

参数说明:
$imageUrl : 验证码的背影图片路径。默认为空

2、setTextContent($content)

设置验证码内容。

参数说明:
$content : 验证码内容

3、setTextColor($param)

设置验证码文字的颜色参数。

参数说明:
$param : 颜色参数. 如:#FF0000

4、setFontName($name, $size = null)

设置验证码文字的字体名称及字体大小。

参数说明:
$name : 字体名称(字体的路径)
$size : 字体大小

5、setFontSize($size)

设置验证码文字的字体大小。

参数说明:
$size : 字体大小

6、setBgImage($url)

设置背景图片的URL地址。

参数说明:
$url : 图片的路径(图片的实际地址)

7、setBgColor($param)

获取背景的颜色参数。

参数说明:
$param : 颜色参数. 如:#FF0000

8、setImageSize($width, $height)

设置生成图片的尺寸大小。

参数说明:
$width : 图片的宽度,单位:像素。
$height : 图片的高度, 单位:像素。

9、setSessionName($name)

设置验证码的session名称。

参数说明:
$name : Session名称

10、check($code)

分析验证输入的验证码是否正确。

参数说明:
$code : 待验证的验证码内容

举例说明:

例一、显示验证码

Controller文件内容:

public function indexAction() {

$pincode = $this->instance('Captcha');

$pincode->show();
}

:当您在程序中没有设置验证码的session_name及验证码内容时,系统默认为:session name为doitphp_captcha_session_id,验证码内容为随机四位字字母加数字组合。其文字颜色及干扰线的颜色也是随机的。

运行结果为:

例二、设置背景图

Controller文件内容:

public function indexAction() {

$pincode = $this->instance('Captcha');

$pincode->show('e:/demo/vdcode.jpg');

}

public function indexAction() {

$pincode = $this->instance('Captcha');

$pincode->setBgImage('e:/demo/vdcode.jpg')->show();

}

:当验证码即设置了背景图又设置了背景颜色时,则显示背景图(设置背景颜色失效),假如背景图象超过了验证码图片的大小,程序则随机在背景图上取一块背景作为验证码的背景。

例三、设置验证码内容、验证码文字大小及颜色、验证码图片大小。

Controller文件内容:

public function indexAction() {

$pincode = $this->instance('Captcha');

$pincode->setTextContent('Too young too simple')->setFontSize(14)
->setImageSize(540, 30)->setTextColor('#C40000')->show();

}

例四、中文验证码

Controller文件内容:

public function indexAction() {

$pincode = $this->instance('Captcha');

$pincode->setTextContent('中国梦 梦之难')->setFontName('C:/WINDOWS/Fonts/msyh.ttf')
->setImageSize(180, 60)->setTextColor('#FF0')->show();
}

运行结果如下: