$7.49 .com domain with free InstantPage Website Builder$1.99 Web Hosting   捷飞网络官方淘宝店   Godaddy 优惠码
返回列表 发帖
分享到:




[PHP 语言] [分享]PHP 验证码可设置字体(大小),可换背景图片,可扭曲角度

//若以下代码有错或不足,请在评论中指出

$img=imagecreatetruecolor(70,25);1 ~/ g3 ^' _- s3 Z6 V
//创建画布
, m9 M6 |- a# W; B' k$ y! M( ~$bgimg=imagecreatefromjpeg("backgroud/background".rand(1,8).'.jpg');% N! n/ w$ n2 ^( T5 c4 s
//生成背景图片% I8 K4 O' C6 A% t' E: Z4 z
$bg_x=rand(0,130);2 ?8 j7 [# {4 N; f8 X+ t
//随机招贴画布起始X轴坐标+ W  u, {8 W4 c4 G# ^
$bg_y=rand(0,55);
; ~8 @. N- n  Y2 v3 {6 X+ ^//随机招贴画布起始Y轴坐标
: R  b3 R9 ]3 Y' c8 W, \imagecopy($img,$bgimg,0,0,$bg_x,$bg_y,$bg_x+70,$bg_y+25);0 W6 P6 K) g- E6 d
//把背景图片$bging粘贴的画布上

//生成随机字符串0 K6 r/ q" }& v" R2 g' ]9 f% S
function creaStr($len){; F) r# `; A& ]% F3 g0 @, }2 ?, z( [
     $arr1=range(0,9);1 t" N& O2 l$ W( u: ~$ |, o; a
     $arr2=range(a,z);
" I. Z+ w5 F$ ]. \' }     $arr3=range(A,Z);5 x; c0 N. m* i8 T- d) b
     $arr=array_merge($arr1,$arr2,$arr3);, X9 b  a7 X4 H7 H
     str_shuffle($arr);' ^8 p$ V5 }$ M0 _0 ^: K
     $str="";
, b% R2 t7 a4 p# o. U+ s( p     for($i=0;$i<$len;$i++){
& V& R9 Q( P0 \+ C+ W* ~- F            $str.=$arr[rand(0,61)];
/ t+ ~# N7 k6 b% ~& c+ t9 K     }5 ~0 N6 |/ w1 U; V( e: j
    return $str;
5 x+ C- ?- J6 C6 ]}

$font='Astarisborn.TTF'; //字体
" V# C; X0 A2 B! M9 Y1 u$str=creaStr(4); //字符串: L' M4 Z$ [1 {0 _- |5 K
for($i=0,$j=5;$i<4;$i++){
+ G( c# ^/ d# i      $array = array(-1,1);2 Z% s) Z" C6 N6 _+ {. D; t
      $p = array_rand($array);! v6 v9 w% Z4 t' a; v( q6 l! ?
      $an = $array[$p]*mt_rand(1,10); //扭曲角度$ D1 u$ ~9 w/ \7 \9 @
      $size = 14;//字体大小
; J9 S2 ?. F3 k" k0 z1 {( ^      imagettftext($img, $size, $an, $j,rand(13,20),imagecolorallocate($img,rand(0,100),rand(0,100),rand(0,100)), $font, $str[$i]);//生成验证字符窜
) l) g7 R8 d% W      $j+=15;
  V  n% Y- F; d" ^& i* ]( Y}
* P! J! U4 \% s2 ~" @3 [1 E9 |header('Content-type:image/png');* M2 z, ^/ x2 I& `7 D# y. g
imagepng($img);
0 W" L1 p: B3 W! L, K( e# Limagedestroy($img);


4 y/ _; |$ }; [3 c8 X6 _
( F* i+ f/ r+ ?0 L: R# |* S8 Y参考:
8 {% t- O! o) _* }8 M6 ohttp://blog.csdn.net/redhat_520/article/details/7652103http://blog.csdn.net/yanhui_wei/article/details/7985225
' J/ N" w1 g, {( Q" C1 T; Mhttp://www.t086.com/code/php/function.php-ImageTTFText.php
+ G+ a$ i% C  ]4 V, z) thttp://www.t086.com/code/php/group.php-20.php

返回列表
Namecheap
Namecheap.com - Cheap domain name registration, renewal and transfers - Free SSL Certificates - Web Hosting
互联网安全