91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

使用php怎么實現一個驗證碼文件類

發布時間:2021-02-03 17:06:53 來源:億速云 閱讀:172 作者:Leah 欄目:開發技術

使用php怎么實現一個驗證碼文件類?相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

具體如下:

<?php

class CCheckCodeFile
{
//驗證碼位數
private $mCheckCodeNum = 4;
//產生的驗證碼
private $mCheckCode  = '';
//驗證碼的圖片
private $mCheckImage = '';
//干擾像素
private $mDisturbColor = '';
//驗證碼的圖片寬度
private $mCheckImageWidth = '80';
//驗證碼的圖片寬度
private $mCheckImageHeight = '20';
/**
*
* @brief  輸出頭
*
*/
private function OutFileHeader()
{
 header ("Content-type: image/png");
}
/**
*
* @brief  產生驗證碼
*
*/
private function CreateCheckCode()
{
 $this->mCheckCode = strtoupper(substr(md5(rand()),0,$this->mCheckCodeNum));
  return $this->mCheckCode;
}
 
/**
*
* @brief  產生驗證碼圖片
*
*/
private function CreateImage()
{
 $this->mCheckImage = @imagecreate ($this->mCheckImageWidth,$this->mCheckImageHeight);
 imagecolorallocate ($this->mCheckImage, 200, 200, 200);
  return $this->mCheckImage;
}
/**
*
* @brief  設置圖片的干擾像素
*
*/
private function SetDisturbColor()
{
  for ($i=0;$i<=128;$i++)
  {
  $this->mDisturbColor = imagecolorallocate ($this->mCheckImage, rand(0,255), rand(0,255), rand(0,255));
  imagesetpixel($this->mCheckImage,rand(2,128),rand(2,38),$this->mDisturbColor);
  }
}
/**
*
* @brief  設置驗證碼圖片的大小
*
* @param  $width  寬
*
* @param  $height 高
*
*/
public function SetCheckImageWH($width,$height)
{
 if($width==''||$height=='')return false;
 $this->mCheckImageWidth = $width;
 $this->mCheckImageHeight = $height;
 return true;
}
/**
*
* @brief  在驗證碼圖片上逐個畫上驗證碼
*
*/
private function WriteCheckCodeToImage()
{
  for ($i=0;$i<=$this->mCheckCodeNum;$i++)
  {
  $bg_color = imagecolorallocate ($this->mCheckImage, rand(0,255), rand(0,128), rand(0,255));
  $x = floor($this->mCheckImageWidth/$this->mCheckCodeNum)*$i;
  $y = rand(0,$this->mCheckImageHeight-15);
  imagechar ($this->mCheckImage, 5, $x, $y, $this->mCheckCode[$i], $bg_color);
  }
}
/**
*
* @brief  輸出驗證碼圖片
*
*/
public function OutCheckImage()
{
 $this ->OutFileHeader();
 $this ->CreateCheckCode();
 $this ->CreateImage();
 $this ->SetDisturbColor();
 $this ->WriteCheckCodeToImage();
 imagepng($this->mCheckImage);
 imagedestroy($this->mCheckImage);
}
}
$c_check_code_image = new CCheckCodeFile();
//$c_check_code_image ->SetCheckImageWH(100,50);
//設置顯示驗證碼圖片的尺寸
$c_check_code_image ->OutCheckImage();
?>

看完上述內容,你們掌握使用php怎么實現一個驗證碼文件類的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

长泰县| 加查县| 台中县| 赤城县| 淄博市| 自治县| 乾安县| 霍城县| 甘洛县| 万年县| 河间市| 沈丘县| 墨玉县| 连城县| 南投县| 铁岭市| 新安县| 特克斯县| 蚌埠市| 土默特右旗| 南投市| 高邮市| 河南省| 边坝县| 达州市| 三台县| 宁明县| 甘孜县| 余江县| 凤台县| 崇明县| 凉城县| 金昌市| 合川市| 荥阳市| 廊坊市| 广平县| 峨眉山市| 古田县| 白城市| 夏河县|