色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

php仿QQ驗證碼的實例分析

有需要的朋友,參考下吧。
復(fù)制代碼 代碼如下:
<?php
/**
 * 仿QQ驗證碼
*/
//Session保存路徑
$sessSavePath = dirname(__FILE__)."/../data/sessions/";
if(is_writeable($sessSavePath) && is_readable($sessSavePath)){ session_save_path($sessSavePath); }
session_start();
//獲取隨機(jī)字符
$rndstring = '';
for($i=0; $i<4; $i++) $rndstring .= chr(mt_rand(65,90));
$img_height=45;    //先定義圖片的長、寬
$img_width=10;
//如果支持GD,則繪圖
if(function_exists("imagecreate"))
{
 //Firefox部份情況會多次請求的問題,5秒內(nèi)刷新頁面將不改變session
 $ntime = time();
 if(empty($_SESSION['dd_ckstr_last']) || empty($_SESSION['dd_ckstr']) || ($ntime - $_SESSION['dd_ckstr_last'] > 5))
 {
  $_SESSION['dd_ckstr'] = strtolower($rndstring);
  $_SESSION['dd_ckstr_last'] = $ntime;
 }
 $rndstring = $_SESSION['dd_ckstr'];
 $rndcodelen = strlen($rndstring);
 //創(chuàng)建圖片,并設(shè)置背景色
 $im = imagecreate(46,20);
 ImageColorAllocate($im, 240,243,248);
 //干擾線
 $lineColor1 = ImageColorAllocate($im, mt_rand(174,218),mt_rand(190,225),mt_rand(217,237));
 for($j=1;$j<=2;$j=$j+3)
 {
  imageline($im,0,$j+mt_rand(1,15),48,$j+mt_rand(1,15),$lineColor1);
 }
 //輸出文字
 $fontColor = ImageColorAllocate($im, mt_rand(0,150),mt_rand(0,150),mt_rand(0,150));
 for($i=0;$i<$rndcodelen;$i++)
 {
  $bc = mt_rand(0,1);
  $rndstring[$i] = strtoupper($rndstring[$i]);
  imagestring($im,mt_rand(3,5),$i*$img_height/4+mt_rand(1,5),mt_rand(1,$img_width/2), $rndstring[$i], $fontColor);
 }
 header("Pragma:no-cache"r"n");
 header("Cache-Control:no-cache"r"n");
 header("Expires:0"r"n");
 //輸出特定類型的圖片格式,優(yōu)先級為 gif -> jpg ->png
 if(function_exists("imagepng"))
 {
  header("content-type:image/png"r"n");
  imagepng($im);
 }
 else
 {
  header("content-type:image/jpeg"r"n");
  imagejpeg($im);
 }
 ImageDestroy($im);
 exit();
}
else
{
 //不支持GD,只輸出字母 ABCD
 $_SESSION['dd_ckstr'] = "abcd";
 $_SESSION['dd_ckstr_last'] = '';
 header("content-type:image/png"r"n");
 header("Pragma:no-cache"r"n");
 header("Cache-Control:no-cache"r"n");
 header("Expires:0"r"n");
 $fp = fopen("data/vdcode.jpg","r");
 echo fread($fp,filesize("data/vdcode.jpg"));
 fclose($fp);
 exit();
}
?>

php技術(shù)php仿QQ驗證碼的實例分析,轉(zhuǎn)載需保留來源!

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

主站蜘蛛池模板: 嘉义县| 陈巴尔虎旗| 通州区| 牙克石市| 兴宁市| 桂平市| 远安县| 襄汾县| 五大连池市| 丰顺县| 晋宁县| 锡林浩特市| 石楼县| 枣阳市| 右玉县| 元江| 唐山市| 定边县| 五原县| 孝义市| 潮安县| 扶绥县| 焉耆| 平泉县| 佳木斯市| 南投市| 顺义区| 宝鸡市| 安国市| 肇东市| 奇台县| 来安县| 六盘水市| 庆安县| 修文县| 乃东县| 合水县| 新安县| 尼勒克县| 宁晋县| 苍溪县|