Captcha(验证码)使用说明

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

类方法使用说明

1、setSessionName($name)

设置验证码的sessionName.
参数说明:
$name : Session名称

2、setTextContent($content)

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

3、show($imageUrl = null)

显示验证码.
参数说明:
$imageUrl : 验证码的背影图片路径

4、check($code)

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

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

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

6、setFontSize($size)

设置字体大小.
参数说明:
$size : 字体大小

7、setBgImage($url)

设置背景图片或水印图片的URL.
参数说明:
$url : 图片的路径(图片的实际地址)

8、setImageSize($width, $height)

设置生成图片的大小.
参数说明:
$width : 图片的宽度
$height : 图片的高度

9、setTextColor($param)

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

10、setBgColor($param)

获取背景的颜色参数
参数说明:
$param : 颜色参数. 如:#FF0000

使用举例

例一、

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();

}

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

例三、

public function indexAction() {
    
    $pincode = $this->instance('Captcha');
    
    $pincode->setTextContent('Too young too simple')->setFontSize(14)
        ->setImageSize(540, 30)->setTextColor('#C40000')->show();

}

例四、中文验证码

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

运行结果如下: