ホームページ >バックエンド開発 >PHPチュートリアル >12306 検証コード php 中国語の英数字検証コード実装コード

12306 検証コード php 中国語の英数字検証コード実装コード

WBOY
WBOYオリジナル
2016-07-29 08:38:021469ブラウズ

英語は数値と同じです
Header("Content-type:image/png");
//ヘッダーを定義し、画像ファイル (できれば png) を宣言します。著作権干渉はありません
// 新しい 4 桁の整数を生成します。検証コード
session_start();//セッションを開く
$authnum_session = '';
$str = 'abcdefghijkmnpqrstuvwxyz1234567890';
$l = strlen($ str; ); //文字列の長さを取得します。
// 前に定義した 4 つの文字と数字をランダムに選択します
{
$num=rand ( 0,$l-1);
//最初の単語から文字列の最大長まで、毎回ランダムに数字を選択します。
//インターセプトされた文字は 0 から始まるため、1 つ減ります。
$authnum_session.= $str[$num];
// 数字で取得した文字を合計 4 桁に結び付ける
}
session_register("authnum_session");検証にセッションを使用するには、セッションを登録し、authnum_session という名前を付けます。
//他のページにこのイメージが含まれている限り、
//$_SESSION["authnum_session"] を通じて呼び出すことができます。
//検証コード イメージを生成します。 srand ((double)microtime()*1000000);
$im = imagecreate(50,20);//画像の幅と高さ;
//主に黒、白、グレーの 3 色を使用します
$black = ImageColorAllocate( $im, 0,0,0);
$white = ImageColorAllocate($im, 255,255,255);
$gray = ImageColorAllocate($im, 200,200,200);
// 4 桁の整数の検証コードを画像に描画します
imagefill ($im,68 ,30,$gray);
//干渉線が必要ない場合は、単にコメントしてください。
$li = ImageColorAllocate($im, 220,220,220); 3;$i++)
{/ / 3 つの干渉行を追加します。ユーザー入力に影響を与える可能性があるため、これはオプションです。 ,rand(20,40),rand(0,21),$li);
}
//画像内の文字の位置
imagestring($im, 5, 8, 2, $authnum_session, $white; );
for($i=0;$i{//干渉ピクセルを追加します
imagesetpixel($im, rand()%70 , rand()%30 , $gray); ImagePNG($im);
ImageDestroy($im );
?> er("Content -type: image/png");
$im = imagecreatetruecolor(120, 30); (「人」、「出」、「来」、「友」、「学」、「孝」、「仁」、「義」、「礼儀」、「正直」、「忠」、「国」、 「zhong」、「yi」、「bai」、「zhe」、「火」、「土」、「金属」、「木」、「雷」、「風」、「龍」、「虎」、「」天」、「地」、
「生」、「微」、「野菜」、「鳥」、「野」、「三」、「百」、「お金」、「祝福」、「愛」、「」 「愛」、「獣」、「虫」、「魚」、「九」、「網」、「新」、「程度」、「ねえ」、「ああ」、「ああ」、「ああ」、「いい」 , "老", "小", "日",
"月 ", "星");
//カラーを作成
$fontcolor = imagecolorallocate($im, 255, 255, 255); $im, 0, 0, 0);
//テキストを設定
for($i// フォントを設定 [url]http://www.font.com.cn/downlist/s_12_3.html[/url] 一般的にサポートされている _GBK シリーズのフォントがあります。 GD ライブラリーによる
$font = 'gbk.ttf';
// テキストの追加
imagettftext($im , 18, 0, 11, 21, $fontcolor, $font, iconv("GB2312","UTF-8") ,$text));
// 出力画像
imagedestroy($im) ;
;
上記は、12306 検証コードの内容を含む、PHP 中国語の英数字検証コードの実装コードを紹介しています。PHP チュートリアルに興味のある友人に役立つことを願っています。


声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。