當前位置:才華齋>計算機>php語言>

php驗證碼程式碼怎麼寫

php語言 閱讀(7.5K)

我們先來處理php程式檔案的開始符和結束符,這個不太複雜,我們用兩個變數來表示它們:

php驗證碼程式碼怎麼寫

  複製程式碼 程式碼如下:

<?php

//檔案頭...

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

//建立真彩色白紙

$im=@imagecreatetruecolor(50,20)ordie("建立影象失敗");

//獲取背景顏色

$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<18;$i++){

//獲取隨機淡色

$line_color=imagecolorallocate($im,rand(200,255),rand(200,255),rand(200,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)];

$imstr[0]["x"]=rand(2,5);

$imstr[0]["y"]=rand(1,4);

//獲取第2個隨機文字

$imstr[1]["s"]=$Str[rand(0,2)][rand(0,25)];

$imstr[1]["x"]=$imstr[0]["x"]+$font_size-1+rand(0,1);

$imstr[1]["y"]=rand(1,3);

//獲取第3個隨機文字

$imstr[2]["s"]=$Str[rand(0,2)][rand(0,25)];

$imstr[2]["x"]=$imstr[1]["x"]+$font_size-1+rand(0,1);

$imstr[2]["y"]=rand(1,4);

//獲取第4個隨機文字

$imstr[3]["s"]=$Str[rand(0,2)][rand(0,25)];

$imstr[3]["x"]=$imstr[2]["x"]+$font_size-1+rand(0,1);

$imstr[3]["y"]=rand(1,3);

//寫入隨機字串

for($i=0;$i<4;$i++){

//獲取隨機較深顏色

$text_color=imagecolorallocate($im,rand(50,180),rand(50,180),rand(50,180));

//畫文字

imagechar($im,$font_size,$imstr[$i]["x"],$imstr[$i]["y"],$imstr[$i]["s"],$text_color);

}

//顯示圖片

imagepng($im);

//銷燬圖片

imagedestroy($im);

?> </p