亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

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

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

PHP5中GD庫如何生成圖形驗證碼

發布時間:2021-10-08 16:10:51 來源:億速云 閱讀:106 作者:小新 欄目:開發技術

這篇文章主要介紹了PHP5中GD庫如何生成圖形驗證碼,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

類似于下面這樣
1.利用GD庫函數生成圖片,并在圖片上寫指定字符
imagecreatetruecolor 新建一個真彩色圖像
imagecolorallocate 為一幅圖像分配顏色(調色板)
imagestring 繪制字符
imageline 繪制線條
imagesetpixel 打像素點
2.輸出圖片
imagejpeg($img);
PHP實現過程,代碼中注釋詳細,這里不做過多解釋
verify.php

代碼如下:

<?php
//1.qi啟用gd庫GD庫提供了一系列用來處理圖片的API,使用GD庫可以處理圖片,或者生成圖片。
// 在網站上GD庫通常用來生成縮略圖或者用來對圖片加水印或者對網站數據生成報表。
session_start();
// 把GBK編碼的字符串轉換成UTF-8字符串,第一個參數之所以寫GBK,是因為本php文件在主機中存儲的編碼是GBK編碼
// UTF-8編碼瀏覽器普遍支持,通用性強,這里就轉換成UTF-8
$str = iconv("GBK", "utf-8", "蕓蕓眾生綠水青山名勝古跡敞開心胸便會云蒸霞蔚快樂將永遠伴隨著你");
if(!is_string($str) || !mb_check_encoding($str,"utf-8"))
{
exit("不是字符串或者不是utf-8");
}
$zhongwenku_size;
// 按UTF-8編碼方式獲取字符串的長度
$zhongwenku_size = mb_strlen($str,"UTF-8");
// 把上述字符導入數組中
$zhongwenku = array();
for( $i=0; $i<$zhongwenku_size; $i++)
{
$zhongwenku[$i] = mb_substr($str, $i,1,"UTF-8");
}
$result = "";
// 圖片上要寫入的四個字符
for($i=0; $i<4; $i++)
{
switch (rand(0, 1))
{
case 0:
$result.=$zhongwenku[rand(0, $zhongwenku_size-1)];
break;
case 1:
$result.=dechex(rand(0,15));
break;
}

}
$_SESSION["check"] = $result;

// 創建一個真彩圖片 寬100,高30
$img = imagecreatetruecolor(100, 30);
// 分配背景顏色
$bg = imagecolorallocate($img, 0, 0, 0);
// 分配文字顏色
$te = imagecolorallocate($img, 255,255,255);
// 在圖片上寫字符串
//imagestring($img, rand(3,8), rand(1,70), rand(1,10), $result, $te);
// 在圖片上根據載入字體可以寫出特殊字體
imagettftext($img, 13, rand(2, 9), 20 ,20, $te, "MSYH.TTF",$result);
$_SESSION["check"] = $result;
for($i=0; $i<3; $i++)
{
// $t = imagecolorallocate($img, rand(0, 255),rand(0, 255),rand(0, 255));
// 畫線
imageline($img, 0, rand(0, 20), rand(70,100), rand(0, 20), $te);
}
$t = imagecolorallocate($img, rand(0, 255),rand(0, 255),rand(0, 255));
// 為圖片添加噪點
for($i=0; $i<200; $i++)
{
imagesetpixel($img, rand(1, 100), rand(1, 30), $t);
}
// 發送http頭信息 指定本次發送的是image中的jpeg
header("Content-type: image/jpeg");
// 輸出jpeg圖片至瀏覽器
imagejpeg($img);
?> 

submit.php 

代碼如下:

<?php
session_start();
if(@$_POST['check'])
{
if($_POST["check"] == $_SESSION["check"])
{
echo" 恭喜你!驗證碼輸入正確!";
}else{
echo" 不好意思驗證碼輸入錯誤";
}
}
?>
<form action="" method="post">
<img src="verify.php"/> </br>
<input type="text" name="check"></br>
<input type="submit" value="submit"></br>
</form> 

代碼中MRYH.ttf 是你要設置的字體。

感謝你能夠認真閱讀完這篇文章,希望小編分享的“PHP5中GD庫如何生成圖形驗證碼”這篇文章對大家有幫助,同時也希望大家多多支持億速云,關注億速云行業資訊頻道,更多相關知識等著你來學習!

向AI問一下細節

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

AI

顺昌县| 邻水| 黄冈市| 安阳市| 高唐县| 阜宁县| 延吉市| 诸暨市| 久治县| 资溪县| 克拉玛依市| 高淳县| 黑水县| 勃利县| 安岳县| 中西区| 太和县| 威信县| 合作市| 明光市| 丹江口市| 渭南市| 通渭县| 泸西县| 格尔木市| 桃园市| 奇台县| 呈贡县| 札达县| 枞阳县| 哈密市| 佛山市| 兴安盟| 晴隆县| 通河县| 中西区| 丹阳市| 格尔木市| 昔阳县| 高要市| 牙克石市|