;
$height=25; //キャンバスの高さ
$length=4;//認証コードの長さ
$code=getcode($length); //ランダムな文字列を取得します
$_SESSION['verfyCode'] = $code;
$img=imagecreate($width,$height);
$bgcolor=imagecolorallocate($img,240,240,240);
$rectangelcolor=imagecolorallocate($img,150,150,150);
imagerectangle($img,1,1,$width-1,$height-1,$rectangelcolor);//境界線を描画します
for($i=0;$i
$codecolor=imagecolorallocate($img,mt_rand(50,200),mt_rand(50,128),mt_rand(50,200));
$angle=rand(-20,20);
$charx=$i*15+8;
$chary=($height+14)/2+rand(-1,1);
imagettftext($img,15,$angle,$charx,$chary,$codecolor,'C:WINDOWSFontsSIMKAI.TTF',
$code[$i]);
}
for($i=0;$i
$linecolor=imagecolorallocate($img,mt_rand(0,250),mt_rand(0,250),mt_rand(0,250));
$linex=mt_rand(1,$width-1);
$liney=mt_rand(1,$height-1);
imageline($img,$linex,$liney,$linex+mt_rand(0,4)-2,$liney+mt_rand(0,4)-2,$linecolor);
}
for($i=0;$i
$pointcolor=imagecolorallocate($img,mt_rand(0,250),mt_rand(0,250),mt_rand(0,250));
imagesetpixel($img,mt_rand(1,$width-1),mt_rand(1,$height-1),$pointcolor);
}
function getcode($length){//PHP 乱数を生成します
$pattern = '1234567890ABCDEFGHIJKLOMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz ';//文字プール
for($i=0;$i
$key .= $pattern{mt_rand(0,35)};
}
$key を返します;
}
ob_clean();
header('コンテンツタイプ:画像/png');
imagepng($img);
?>
効果画像は以下の通りです
http://www.bkjia.com/PHPjc/632615.htmlwww.bkjia.com本当http://www.bkjia.com/PHPjc/632615.html技術記事検証コードを生成するには、imagecreate、imagepng、header などの PHP グラフィックス処理関数を使用します。簡単な例を見てみましょう。 コード例は次のとおりです。コードをコピーします...
|