CodeIgniter学习笔记(十六)——CI中的验证码

首先需要在入口文件的同级目录文件夹用于保存验证码图片,比如新建captcha目录

加载captcha辅助类

$this->load->helper('captcha');

调用create_captcha函数生成验证码图片

$this->load->helper('url');
$vals = array
    (
        // 验证码文字,默认是8位随机字符串
        'word' => 'Random word',
        // 图片保存路径
        'img_path' => './captcha/',
        // 基础目录URL
        'img_url' => base_url() . './captcha',
        // 图片中的字体使用的字体文件
        'font_path' => './path/to/fonts/texb.ttf',
        // 图片大小
        'img_width' => '150',
        'img_height' => 30,
        // 指定了验证码图片的超时删除时间(秒),默认2小时
        'expiration' => 30
    );
$cap = create_captcha($vals);

此外,还可以设置字符串长度、颜色、字体大小、可选字符,返回值包括了生成图片的名称、完整的img标签、验证码字符串

由于CI不是PHP的session,因此对于验证码的验证过程可以直接使用PHP的session进行保存

session_start();
$_SESSION['cap'] = $cap['word'];
然后使用用户的输入与session中的值进行比较就可以了
原文地址:https://www.cnblogs.com/iamsupercola/p/4638705.html