ホームページ  >  記事  >  バックエンド開発  >  美しい PHP 画像検証コードの例_PHP チュートリアル

美しい PHP 画像検証コードの例_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:35:20829ブラウズ

1. エフェクトを表示します
美しい PHP 画像検証コードの例_PHP チュートリアル
2. コードは次のとおりです

コードは次のとおりです:/*
* @Author fy
*/

$ imgwidth = 100 width $ 40; $font = 'Fonts/segoesc.ttf';

$im=imagecreatetruecolor($imgwidth,$imgheight);

$while=imageColorAllocate($im,255,255,255);
imagefill($im,0,0,$while); //画像を塗りつぶします

//文字列を取得します

$authstr='';

$_len = strlen($charset)-1;

for ($i=0;$i<$codelen;$i++) {

$authstr .= $charset [mt_rand(0,$_len)];
}

session_start();
$_SESSION['scode']=strto lower($authstr);//主に大文字と小文字の区別を避けるために、すべてを小文字に変換します

// 星に変更された点をランダムに描画します
for ($i=0;$i<$imgwidth;$i++){
$randcolor=imageColorallocate($im,mt_rand(200,255),mt_rand(200,255), mt_rand(200,255));

imagestring($im,mt_rand(1,5), mt_rand(0,$imgwidth),mt_rand(0,$imgheight), '*',$randcolor);

//imagesetpixel($im) ,mt_rand(0,$imgwidth),mt_rand(0,$imgheight),$randcolor);
}

//ランダムに線を描画、線数=文字数(任意)

for($i=0;$i< ;$ codelen;$i++)
{
$randcolor=imagecolorallocate($im,mt_rand(0,255),mt_rand(0,255),mt_rand(0,255));
imageline($im,0,mt_rand(0,$imgheight), $imgwidth ,mt_rand(0,$imgheight),$randcolor);
$_x=intval($imgwidth/$codelen); //文字の距離を計算します
$_y=intval($imgheight*0.7) //文字は画像の70%に表示されます
for($i=0;$ i< ;strlen($authstr);$i++){

$randcolor=imagecolorallocate($im,mt_rand(0,150),mt_rand(0,150),mt_rand(0,150));
//imagestring($im,5,$j,5,$imgstr[$i],$color3) ;
// imagettftext ( resource $image , float $size , float $angle , int $x , int $y , int $color , string $fontfile , string $text )
imagettftext($im,$fontsize,mt_rand(- 30,30),$i*$_x+3,$_y,$randcolor,$font,$authstr[$i]);

}

//画像を生成

header("content-type:image/PNG");

imagePNG($im);
imageDestroy($im);




http://www.bkjia.com/PHPjc/744335.html

www.bkjia.com


tru​​e

http://www.bkjia.com/PHPjc/744335.html

技術記事 1. 表示効果 2. コードは次のようにコピーします。 /* * @Author fy */ //画像の幅 $imgheight=40; / /検証コードの長さ$ フォント...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。