php 验证码程序,数字与字母
一款php 验证码程序函数,原理是利用php gd库再生成随便数字,然后创建一个session与一张数字图片,就成了图形验证码了,代码如下:
- function fun_code($sessionname)
- {
- header("content-type:image/png");
- session_start();
- $authnum_session = '';
- //$str = 'abcdefghijkmnpqrstuvwxyz1234567890';
- $str = '1234567890';
- $l = strlen($str);
- for($i=1;$i<=4;$i++)
- {
- $num=rand(0,$l-1);
- $authnum_session.= $str[$num];
- }
- $_session[$sessionname]=$authnum_session;
- srand((double)microtime()*1000000);
- $im = imagecreate(50,20);
- $black = imagecolorallocate($im, 0,0,0);
- $white = imagecolorallocate($im, 255,255,255);
- $gray = imagecolorallocate($im, 200,200,200);
- imagefill($im,68,30,$gray);
- for($i=0;$i<3;$i++)
- {
- imageline($im,rand(0,30),rand(0,21),rand(20,40),rand(0,21),$li);
- }
- imagestring($im, 5, 8, 2, $authnum_session, $white);
- for($i=0;$i<90;$i++)
- {
- imagesetpixel($im, rand()%70 , rand()%30 , $gray);
- }//开源代码phpfensi.com
- imagepng($im);
- imagedestroy($im);
- }
- echo fun_code("code");