国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > PHP > 正文

個人寫的PHP驗證碼生成類分享

2020-03-22 19:51:07
字體:
供稿:網(wǎng)友
此驗證碼類直接拿去就可以用,也可以參考!其中類成員codestr是生成的驗證碼字符串: * 驗證碼html' target='_blank'>class Code{ // 1. 定義各個成員 有寬、高、畫布、字?jǐn)?shù)、類型、畫類型 private $width; //寬度 private $height; //高度 private $num; //驗證碼字?jǐn)?shù) private $imgType; //生成圖片類型 private $Type; //字串類型 1,2,3 三個選項 1 純數(shù)字 2 純小寫字母 3 大小寫數(shù)字混合 private $hb; //畫布 public $codestr; // 驗證碼字串 public function __construct($height=20,$num=4,$imgType="jpeg",$Type=1){ $this- width = $num*20; $this- height = $height; $this- num = $num; $this- imgType = $imgType; $this- Type = $Type; $this- codestr = $this- codestr(); $this- zuhe(); // 2. 定義隨機(jī)獲取字符串函數(shù) private function codestr(){ switch($this- Type){ case 1: // 類型為1 獲取1-9隨機(jī)數(shù) $str = implode("",array_rand(range(0,9),$this- num)); break; case 2: // 類型為2 獲取a-z隨機(jī)小寫字母 $str = implode("",array_rand(array_flip(range(a,z)),$this- num)); break; case 3: // 類型為3 獲取數(shù)字,小寫字母,大寫字母 混合 for($i=0;$i $this- $i++){ $m = rand(0,2); switch($m){ case 0: $o = rand(48,57); break; case 1: $o = rand(65,90); break; case 2: $o = rand(97,122); break; $str .= sprintf("%c",$o); break;
private function Bg(){ return imagecolorallocate($this- hb,rand(130,250),rand(130,250),rand(130,250)); // 5. 生成字體顏色 private function Font(){ return imagecolorallocate($this- hb,rand(0,100),rand(0,100),rand(0,100)); // 6. 填充背景顏色 private function BgColor(){ imagefilledrectangle($this- hb,0,0,$this- width,$this- height,$this- Bg()); // 7. 干擾點 private function ganrao(){ $sum=floor(($this- width)*($this- height)/3); for($i=0;$i $sum;$i++){ imagesetpixel($this- hb,rand(0,$this- width),rand(0,$this- height),$this- Bg()); // 8. 隨機(jī)直線 弧線 private function huxian(){ for($i=0;$i $this- $i++){ imageArc($this- hb,rand(0,$this- width),rand(0,$this- height),rand(0,$this- width),rand(0,$this- height),rand(0,360),rand(0,360),$this- Bg()); // 9. 寫字 private function xiezi(){ for($i=0;$i $this- $i++){ $x=ceil($this- width/$this- num)*$i; $y=rand(1,$this- height-15); imagechar($this- hb,5,$x+4,$y,$this- codestr[$i],$this- Font()); // 10. 輸出 private function OutImg(){ $shuchu="image".$this- imgType; $header="Content-type:image/".$this- imgType; if(function_exists($shuchu)){ header($header); $shuchu($this- }else{ exit("GD庫沒有此類圖像"); // 11. 拼裝 private function zuhe(){ $this- Hb(); $this- BgColor(); $this- ganrao(); $this- huxian(); $this- xiezi(); $this- OutImg(); public function getCodeStr(){ return $this- codestr; PHP教程

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發(fā)表
主站蜘蛛池模板: 醴陵市| 普定县| 阳东县| 湖南省| 白河县| 宝鸡市| 灯塔市| 邢台县| 当涂县| 正阳县| 仁化县| 华阴市| 广安市| 灌阳县| 来宾市| 龙泉市| 桦川县| 梁山县| 额敏县| 扬中市| 桂林市| 阿坝县| 疏勒县| 怀集县| 日土县| 陈巴尔虎旗| 瑞丽市| 宜宾市| 丰台区| 黑龙江省| 桃园县| 张家川| 昭苏县| 福海县| 平利县| 望都县| 济源市| 临沭县| 宣威市| 泸水县| 济源市|