PHP验证码代码分享

session_start();   //在文件的最开头打开session 
//把英文和中文分别放入两个数组中 
$english_arr=array('q','w','e','r','t','y','u','i','o','p','a','s','d','f','g','h','j', 
                        'k','l','z','x','c','v','b','n','m'); 
$chinese_arr=array('一','二','三','四','五','六','七','八','九','十','零','木','和','我', 
                        '人','有','的','右','主','产','为','这','工','上','下','左'); 
/** 
* 取得中文和英文 
*/ 

/** 
* 取得一个随机数, 随机字母,随机中文 
*/ 
for($i=0;$i<5;$i++) 

    $index=rand(0,2); 
    if($index=='0') 
    { 
        $num.=rand(0,9); 
//        echo "$num
"; 
    } 
    else if($index=='1') 
    { 
        $num.=$english_arr[rand(0,25)]; 
//        echo "$num
"; 
    } 
    else if($index=='2') 
    { 
//        echo $num; 
        $num.=$chinese_arr[rand(0,25)];   //如果加入的是中文,则要转换编码 
//        echo "$num
"; 
    } 



$_SESSION[check_num]=$num;  //把这个验证码记入session中 
//echo $_SESSION[check_num]; 
//  p_w_picpathcreatetruecolor(宽,高) 
$p_w_picpath=p_w_picpathcreatetruecolor(150,50);   //创建一个100,30的图片 

//  p_w_picpathcolorallocate(图片名,红,蓝,绿)   三原色 
p_w_picpathcolorallocate($p_w_picpath,rand(0,255),rand(0,255),rand(0,255));//第一次是设置图片背景色,三原色随机 

$color=p_w_picpathcolorallocate($p_w_picpath,255,255,255);//以后的为了创建一种颜色 

// p_w_picpathstring(图片名,字体类型1-6六种,X坐标,Y坐标,内容,颜色) 
//p_w_picpathstring($p_w_picpath,rand(3,6),10,3,$num,$color);   //把内容写到图片中  不能输出中文 

//  p_w_picpathttftext(图片名,字体大小,偏移角度,X坐标,Y坐标,颜色,字体文件地址,输入的内容)  这个内容必须要在输入的时候转换编码 
p_w_picpathttftext($p_w_picpath,rand(15,18),0,rand(2,50),rand(30,39),$color,'simkai.ttf',iconv('GBK','UTF-8',$num));   //把内容写到图片中,可以有中文 



/** 
* 画线和点做干扰 
*/ 
for($i=0;$i<10;$i++) 

     $linecolor=p_w_picpathcolorallocate($p_w_picpath,rand(0,255),rand(0,255),rand(0,255)); 
     p_w_picpathline($p_w_picpath,rand(0,150),rand(0,50),rand(0,150),rand(0,50),$linecolor); 


  for($i=0;$i<200;$i++) 

     $pixelcolor=p_w_picpathcolorallocate($p_w_picpath,rand(0,255),rand(0,255),rand(0,255)); 
      p_w_picpathsetpixel($p_w_picpath,rand(0,150),rand(0,50),$pixelcolor); 



/** 
  * 输出图片 
  */ 
//echo dechex(rand(0,15)); 

header("ContentType:p_w_picpath/jpeg");   //设置此文件是以什么形势输出   这里是作为一张图片 

p_w_picpathjpeg($p_w_picpath);  //输出jpeg格式的图片 



?>

成都创新互联专注于企业成都全网营销推广、网站重做改版、善右网站定制设计、自适应品牌网站建设、html5商城系统网站开发、集团公司官网建设、成都外贸网站制作、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为善右等各大城市提供网站开发制作服务。


分享文章:PHP验证码代码分享
网站地址:http://azwzsj.com/article/gdiejh.html