ホームページ  >  記事  >  バックエンド開発  >  PHP描画アプリケーションの検証コード

PHP描画アプリケーションの検証コード

WBOY
WBOYオリジナル
2016-06-23 13:38:131109ブラウズ

描画に関しては、前に述べたように、PHP 描画は真に動的描画です。生成される画像が非常に醜いことは認めますが、主な関心事はデータ処理です​​。

検証コードはほとんどどこでも見られますが、その生成と描画テクノロジーは切り離せないもので、次のコードのように、文字と数字を含む要素を描画するのは非常に簡単です。

<?php	$checkCode="";	for($i=0; $i<=3;$i++){		$checkCode.=dechex(rand(1,15));	}	session_start();	$_SESSION['checkCode']=$checkCode;	//建立画布	$img_1=imagecreatetruecolor(110, 30);	$red=imagecolorallocate($img_1, 255, 0, 0);	imagestring($img_1, 5, 0, 0, $checkCode, $red);	header("Content-type: image/png");	imagepng($img_1);	imagedestroy($img_1);?>
上記のコードは、単に検証コードの描画について説明しているだけで、実際には、このコードはセキュリティ処理を実行しません。

以下は比較的複雑な認証コードの処理です:

<?php	$checkCode="";	for($i=0; $i<=3;$i++){		$checkCode.=dechex(rand(1,15));	}	session_start();	$_SESSION['checkCode']=$checkCode;	//建立画布	$img_1=imagecreatetruecolor(70, 40);	//必须是先创建画布,在创建颜色。	$red=imagecolorallocate($img_1, rand(0,255), rand(0,255), rand(0,255));	for($k=0; $k<=20; $k++){		imageline($img_1, rand(0,50),rand(0,30),0,0,0,0, imagecolorallocate($img_1, rand(0,255), rand(0,255), rand(0,255)));	}	imagestring($img_1, rand(3,7), rand(0,40), rand(0,20), $checkCode, $red);	header("Content-type: image/png");	imagepng($img_1);	imagedestroy($img_1);?>


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