博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PHP生成验证码及单实例应用
阅读量:4979 次
发布时间:2019-06-12

本文共 2154 字,大约阅读时间需要 7 分钟。

/* note: * this     指向当前对象本身 * self     指向当前类 * parent   指向父类 *//* 验证码工具类 * @author pandancode * @date 20150-12-1 */class Verification_Code{        private $_vode;    private $_vode_len;    private $_img_handle;    private $_img_width;    private $_img_height;    private $_img_type;    private $_img_bg_color;    private $_img_color;        /* 单实例 */    private static $_instance;        /* 获取当前实例 */    public static function getInstance(){        if( !(self::$_instance instanceof self) ){            self::$_instance = new self;        }        return self::$_instance;    }        /* 构造函数,设置 为private,禁止外部访问 */    private function __Construct(){}        /* 设置 为private,禁止外部访问,禁止外部访问 */    private function __clone(){}        /* 生成验证码图片前设置参数     * @param string vode 验证码      * @param int vode_len 验证码长度      * @param string img_type 生成图片格式,默认为png      */    public function set_param($vode,$vode_len,$width,$height,$img_type='png',$img_bg_color=array('R'=>250,'G'=>'250','B'=>'250'),$img_color=array('R'=>0,'G'=>0,'B'=>0)){        $this->_vode = $vode;        $this->_vode_len = $vode_len;        $this->_img_width = $width;        $this->_img_height = $height;        $this->_img_type = $_img_type;        $this->_img_bg_color = $img_bg_color;        $this->_img_color = $img_color;    }        /* 生成图片      */    public function create_img(){        $this->_img_handle = ImageCreate($this->_img_width,$this->_img_height);        $this->_img_bg_color = ImageColorAllocate($this->_img_handle,$this->_img_bg_color['R'],$this->_img_bg_color['G'],$this->_img_bg_color['B']);        $this->_img_color = ImageColorAllocate($this->_img_handle,$this->_img_color['R'],$this->_img_color['G'],$this->_img_color['B']);                //填充背景颜色        Imagefill($this->_img_handle,0,0,$this->_img_bg_color);        ImageString($this->_img_handle,10,10,10,$this->_vode,$this->_img_color);                ob_clean();        header('Content-type:image/png');        Imagepng($this->_img_handle);    }    }$img_tool = Verification_Code::getInstance();$img_tool->set_param('ABVS',4,80,40);$img_tool->create_img();

  

转载于:https://www.cnblogs.com/pandang/p/5074008.html

你可能感兴趣的文章
Executor 框架
查看>>
ubuntu安装配置jdk
查看>>
nginx配置初步
查看>>
新版本chrome浏览器控制台怎么设置成独立的窗口
查看>>
winform保存用户登录(单态模式)
查看>>
图片加载问题
查看>>
老鸟解疑惑,菜鸟可起飞
查看>>
Java相关
查看>>
java 文件读取写入
查看>>
Frequentist 观点和 Bayesian 观点
查看>>
生活中的物理学(电学)
查看>>
中医文化 —— 穴位
查看>>
从二叉搜索树到平衡二叉搜索树
查看>>
推理集 —— 心理
查看>>
队列&栈的研究
查看>>
axis2 实例学习
查看>>
开发进度02
查看>>
构建自己的embedded linux系统
查看>>
【WCF系列一】WCF入门教程(图文) VS2012
查看>>
mysql 匹配 findinset
查看>>