Home  >  Article  >  php教程  >  php验证码程序代码

php验证码程序代码

WBOY
WBOYOriginal
2016-05-25 16:41:201365browse

网上生成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[&#39;code&#39;];
if ($_SESSION["code"] = $getcode) {
    echo &#39; 验证合法,进入下一步&#39;;
    unset($_SESSION["code"]);
} else {
    echo &#39; 验证码不正确&#39;;
    header(&#39;location:vial.php&#39;);
}


本文地址:

转载随意,但请附上文章地址:-)

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn