-
-
/**
- * 通用PHP 인증 코드 클래스 PHP 인증 코드类 img.php
- * 版本:V0.1
- * bbs.it-home.org 2013/3/1
- */
- class ValidateCode {
- private $charset="abcdefghizklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890"; //随机因子
- private $code; //PHP 인증 코드 클래스 PHP 인증 코드文字
- private $codelen=4; //PHP 인증 코드 클래스 PHP 인증 코드显示几个文字
- private $width=130; //PHP 인증 코드 클래스 PHP 인증 코드宽度
- private $height=50; //PHP 인증 코드 클래스 PHP 인증 코드高度
- private $img; //PHP 인증 코드 클래스 PHP 인증 코드资源句柄
- private $font; //指定的字体
- private $fontsize=20; //指定的字体大小
- private $fontcolor; //字体颜色 随机
-
- //构造类 编写字体
- public function __construct(){
- $this->font=ROOT_PATH.'/font/elephant.ttf';
- }
- //创建4个随机码
- private function createCode(){
- $_leng=strlen($this->charset);
- for($i=1;$icodelen;$i ){
- $this->code.=$this->charset[mt_rand(0,$_leng)];
- }
- return $this->code;
- }
-
- //创建背景
- private function createBg(){
- //创建画布 给一个资源jubing
- $this->img=imagecreatetruecolor($this->width,$this->height);
- //背景颜色
- $color=imagecolorallocate($this->img,mt_rand(157,255),mt_rand(157,255),mt_rand(157,255));
- //画出一个矩形
- imagefilledrectangle($this->img,0,$this->height,$this->width,0,$color);
- }
-
- //创建字体
- private function createFont(){
- $_x=($this->width / $this->codelen); //字体长度
- for ($i=0;$icodelen;$i ){
- //文字颜色
- $color=imagecolorallocate($this->img,mt_rand(0,156),mt_rand(0,156),mt_rand(0,156));
- //资源句柄 字体大小 倾斜度 字体长度 字体高度 字体颜色 字体 具体文本
- imagettftext($this->img,$this->fontsize,mt_rand(-30,30),$_x*$i mt_rand(1,5),$this->height/1.4,$color,$this->font,$this->code[$i]);
- }
- }
- //随机线条
- private function createLine(){
- //随机线条
- for ($i=0;$i $color = imagecolorallocate($this->img,mt_rand(0,156),mt_rand(0,156),mt_rand(0,156));
- imageline($this->img,mt_rand(0,$this->width),mt_rand(0,$this->height),mt_rand(0,$this->width),mt_rand(0,$this->height),$color);
- }
- //随机雪花
- for ($i=0;$i $color = imagecolorallocate($this->img,mt_rand(220,255),mt_rand(220,255),mt_rand(220,255));
- imagestring($this->img,mt_rand(1,5),mt_rand(0,$this->width),mt_rand(0,$this->height),'*',$color);
- }
- }
- //输出背景
- private function outPut(){
- //生成标头
- header('ContentType:img/png');
- //输出图片
- imagepng($this->img);
- //销毁结果集
- imagedestroy($this->img);
- }
- //对外输出
- public function doimg(){
- //加载背景
- $this->createBg();
- //加载文件
- $this->createCode();
- //加载线条
- $this->createLine();
- //加载字体
- $this->createFont();
- //加载背景
- $this->outPut();
- }
-
- //获取PHP 인증 코드 클래스 PHP 인증 코드
- public function getCode(){
- return strtolower($this->code);
- }
-
- }
- ?>
复制代码
调用示例:index.php
为大家推荐几篇有关phpPHP 인증 코드 클래스 PHP 인증 코드的文章:
php随机PHP 인증 코드 클래스 PHP 인증 코드 php生成随机PHP 인증 코드 클래스 PHP 인증 코드(图文)
用php生成带有雪花背景的PHP 인증 코드 클래스 PHP 인증 코드
php写的一个PHP 인증 코드 클래스 PHP 인증 코드
php生成动态图片PHP 인증 코드 클래스 PHP 인증 코드的一段代码
|