> php教程 > php手册 > 본문

php验证码程序代码

WBOY
풀어 주다: 2016-05-25 16:41:20
원래의
1371명이 탐색했습니다.

网上生成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;);
}
로그인 후 복사


本文地址:

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

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿