网上生成php验证码程序用很多,下面我来给大家分享一款超不错的php验证码程序代码,有需要的朋友可参考,验证码识别一般分为以下几个步骤:1. 取出字模,2. 二值化,3. 计算特征,4. 对照样本.
php验证码程序代码如下:
<?php function _code($_code_length = 4, $_width = 75, $_height = 25) { for ($i = 0; $i < $_code_length; $i++) { $_nmsg.= dechex(mt_rand(0, 15)); } $_SESSION["code"] = $_nmsg; $_img = imagecreatetruecolor($_width, $_height); $_white = imagecolorallocate($_img, 250, 250, 250); imagefill($_img, 0, 0, $_white); $_gray = imagecolorallocate($_img, 196, 196, 196); imagerectangle($_img, 0, 0, $_width - 1, $_height - 1, $_gray); for ($i = 0; $i < 6; $i++) { $_md_color = imagecolorallocate($_img, mt_rand(200, 255) , mt_rand(200, 255) , mt_rand(200, 255)); imageline($_img, mt_rand(0, $_width) , mt_rand(0, $_height) , mt_rand(0, $_width) , mt_rand(0, $_height) , $_md_color); } for ($i = 0; $i < 50; $i++) { $_md_color = imagecolorallocate($_img, mt_rand(200, 255) , mt_rand(200, 255) , mt_rand(200, 255)); imagestring($_img, 1, mt_rand(1, $_width - 5) , mt_rand(1, $_height - 5) , "*", $_md_color); } for ($i = 0; $i < $_code_length; $i++) { $_md_color = imagecolorallocate($_img, mt_rand(0, 102) , mt_rand(0, 102) , mt_rand(0, 102)); imagestring($_img, 5, $i * $_width / $_code_length + mt_rand(1, 10) , mt_rand(1, $_height / 2) , $_SESSION["code"][$i], $_md_color); } header("Content-Type:image/png"); imagepng($_img); imagedestroy($_img); } //验证码使用方法 $getcode = $_POST['code']; if ($_SESSION["code"] = $getcode) { echo ' 验证合法,进入下一步'; unset($_SESSION["code"]); } else { echo ' 验证码不正确'; header('location:vial.php'); }
本文地址:
转载随意,但请附上文章地址:-)