ホームページ >バックエンド開発 >PHPチュートリアル >php_PHP チュートリアルで検証コードを生成する
この PHP 検証コード生成コードの原理は、乱数を生成する --> 画像を作成する --> 乱数を画像に書き込む --> それらをセッションに保存することです。検証コード画像生成のプロセスを見てください。ブラウザは、PNG 画像を出力し、ランダムになる準備ができていることを確認します。数値ジェネレータ シード srand((double)microtime()*1000000); 4 桁の整数の検証コードを画像に描画します。
http://www.bkjia.com/PHPjc/633022.html/php 検証コードを生成するチュートリアル
/*======================
/*=============================================== =====
検証コードを生成するこの PHP コードの原理は、乱数を生成する -> 画像を作成する -> 乱数を画像に書き込む -> セッションに保存するというものです。検証のプロセスを見てください。コード画像の生成。png 画像が出力されることをブラウザに通知します。 適切な乱数生成シード srand((double)microtime()*1000000); 4 桁の整数の検証コードを画像に描画します。 ================================================= =====*/
ランダムな文字列関数を生成する
//認証コード画像生成
=====================*/
関数ランダム($length) {
$ハッシュ = '';
$chars = 'abcdefghijklmnopqrstuvwxyz0123456789abcdefghijklmnopqrstuvwxyz';
$max = strlen($chars) - 1;
mt_srand((double)microtime() * 1000000);
for($i = 0; $i $hash .= $chars[mt_rand(0, $max)];
}
$ハッシュを返します;
}
session_start();
//png画像が出力されることをブラウザに通知します
www.bkjia.comtrue
header("コンテンツタイプ: 画像/png"); //乱数ジェネレーターのシードを準備します
//srand((double)microtime()*1000000); //画像の関連パラメータを準備します
$im = imagecreate(62,22); $black = imagecolorallocate($im, 0,0,0) //rgb 黒識別子
; $white = imagecolorallocate($im, 255,255,255) //RGB ホワイト識別子
; $gray = imagecolorallocate($im, 179,183,185) //rgb グレー識別子
; //描画を開始します
イメージフィル($im,0,0,$gray); //while(($randval=rand()%100000) //$_session["check_code"] = $randval; // 4 桁の整数の検証コードを画像に描画します
$randval=ランダム(4);
$_session["check_code"]=$randval;
画像文字列($im, 5, 10, 3, $randval, $white); //}
//干渉ピクセルを追加します
for($i=0;$i $randcolor = imagecolorallocate($im,rand(0,255),rand(0,255),rand(0,255)); imagesetpixel($im, rand()%70, rand()%30, $white); }
//検証画像を出力します
画像png($im)
//画像識別子を破棄します
画像破壊($im);
?>
http://www.bkjia.com/PHPjc/633022.html