background image

PHP 代码:php168_cms 中提取验证码

本文是在 php163_cms 中提取验证码进行了详细的分析介绍,需要的朋友参考下
代码如下:
 
<?php

function

 yzImg(

$nmsg

){

if

 (function_exists('imagecreatetruecolor')){

$imstr

[0]["s"]=

$nmsg

[0];

$imstr

[1]["s"]=

$nmsg

[1];

$imstr

[2]["s"]=

$nmsg

[2];

$imstr

[3]["s"]=

$nmsg

[3];

//文件头...

header("Content-type: image/png");

//创建真彩色白纸

$im

 = @imagecreatetruecolor(50, 20) 

or

 

die

("建立图像失败");

//获取背景颜色

$background_color

 = imagecolorallocate(

$im

, 255, 255, 255);

//填充背景颜色(这个东西类似油桶)

imagefill(

$im

,0,0,

$background_color

);

//获取边框颜色

$border_color

 = imagecolorallocate(

$im

,200,200,200);

//画矩形,边框颜色 200,200,200

imagerectangle(

$im

,0,0,49,19,

$border_color

);

//逐行炫耀背景,全屏用 1 或 0

for

(

$i

=2;

$i

<28;

$i

++){

//获取随机淡色

$line_color

 = imagecolorallocate(

$im

,rand(180,255),rand(180,255),rand(180,255));

//画线

imageline(

$im

,2,

$i

,47,

$i

,

$line_color

);

}

//设置字体大小

$font_size

=12;

//设置印上去的文字

$Str

[0] = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";

$Str

[1] = "abcdefghijklmnopqrstuvwxyz";

$Str

[2] = "01234567891234567890123456";

//获取第 1 个随机文字
//$imstr[0]["s"] = $Str[rand(0,2)][rand(0,25)];