驗證碼的用途就不用多說了,之前也寫了一篇關於PHP驗證碼的文章,但是沒有封裝成類。下面就介紹一個PHP的一個驗證碼類。
<?php session_start(); Header("Content-type: image/gif"); class SecurityCode { private $codes = ''; function __construct() { $code = '0-1-2-3-4-5-6-7-8-9-A-B-C-D-E-F-G-H-I-J-K-L-M-N-O-P-Q-R-S-T-U-V-W-X-Y-Z'; $codeArray = explode('-',$code); shuffle($codeArray); $this->codes = implode('',array_slice($codeArray,0,4)); } public function CreateImg() { $_SESSION['check_pic'] = $this->codes; $img = imagecreate(70,25); imagecolorallocate($img,222,222,222); $testcolor1 = imagecolorallocate($img,255,0,0); $testcolor2 = imagecolorallocate($img,51,51,51); $testcolor3 = imagecolorallocate($img,0,0,255); $testcolor4 = imagecolorallocate($img,255,0,255); for ($i = 0; $i < 4; $i++) { imagestring($img,rand(5,6),8 + $i * 15,rand(2,8),$this->codes[$i],rand(1,4)); } imagegif($img); } } $code = new SecurityCode(); $code->CreateImg(); $code = NULL; ?>
封裝成類之後,加入了構造函數,使用起來也方便些。你也可以繼續完善下這個驗證碼類,比如加入析構函數,如何更節省內存等等。