簡單漂亮的php驗證碼函數

來源:互聯網
上載者:User

標籤:type   hex   class   color   nts   oca   content   style   create   

/*      *說明:函數功能是產生驗證碼     * 參數說明:輸入 長度,寬度,高度     */    function vcode($_code_length = 4, $_width = 75, $_height = 25){                $_font=dirname(__FILE__).‘/font/Elephant.ttf‘;//注意字型路徑要寫對,否則顯示不了圖片                $_fontsize=$_height/1.8;        $_nmsg="";        for($i=0;$i<$_code_length;$i++){            $_nmsg .= dechex(mt_rand(0,15));        }        if(!isset($_SESSION)){            session_start();        }                $_SESSION["vcode"] = $_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["vcode"][$i], $_md_color);            imagettftext($_img,$_fontsize,mt_rand(-20,20),$_fontsize*$i+mt_rand(1,5),$_height / 1.4,$_md_color,$_font,$_SESSION["vcode"][$i]);        }        header("Content-Type:image/png");        imagepng($_img);        imagedestroy($_img);    }

需要一個字型檔 可以百度下載一個

簡單漂亮的php驗證碼函數

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.