以下正文:
新建一个PHP文件captcha_code_file.php
//首先开启sessionsession_start();//定义前台显示验证码长&宽$image_width = 120;$image_height = 40;$characters_on_image = 6;$font = './monofont.ttf';//The characters that can be used in the CAPTCHA code.//avoid confusing characters (l 1 and i for example)$possible_letters = '23456789bcdfghjkmnpqrstvwxyz';$random_dots = 10;$random_lines = 30;$captcha_text_color="0x142864";$captcha_noice_color = "0x142864";//定义要生成验证码的字符串$code = '';$i = 0;while ($i < $characters_on_image) { $code .= substr($possible_letters, mt_rand(0, strlen($possible_letters)-1), 1);$i++;}$font_size = $image_height * 0.75;$image = @imagecreate($image_width, $image_height);/* setting the background, text and noise colours here */$background_color = imagecolorallocate($image, 255, 255, 255);$arr_text_color = hexrgb($captcha_text_color);$text_color = imagecolorallocate($image, $arr_text_color['red'], $arr_text_color['green'], $arr_text_color['blue']);$arr_noice_color = hexrgb($captcha_noice_color);$image_noise_color = imagecolorallocate($image, $arr_noice_color['red'], $arr_noice_color['green'], $arr_noice_color['blue']);/* generating the dots randomly in background */for( $i=0; $i<$random_dots; $i++ ) {imagefilledellipse($image, mt_rand(0,$image_width), mt_rand(0,$image_height), 2, 3, $image_noise_color);}/* generating lines randomly in background of image */for( $i=0; $i<$random_lines; $i++ ) {imageline($image, mt_rand(0,$image_width), mt_rand(0,$image_height), mt_rand(0,$image_width), mt_rand(0,$image_height), $image_noise_color);}/* create a text box and add 6 letters code in it */$textbox = imagettfbbox($font_size, 0, $font, $code); $x = ($image_width - $textbox[4])/2;$y = ($image_height - $textbox[5])/2;imagettftext($image, $font_size, 0, $x, $y, $text_color, $font , $code);/* Show captcha image in the page html page */header('Content-Type: image/jpeg');// defining the image type to be shown in browser widowimagejpeg($image);//showing the imageimagedestroy($image);//destroying the image instance//设置sessio<a style="color:transparent">、本文来源gao($daima.com搞@代@#码$网</a><big>搞gaodaima代码</big>n,做验证$_SESSION['6_letters_code'] = $code;function hexrgb ($hexstr){ $int = hexdec($hexstr); return array("red" => 0xFF & ($int >> 0x10), "green" => 0xFF & ($int >> 0x8), "blue" => 0xFF & $int);}
以上就是(进阶篇)php生成验证码程序代码的内容,更多相关内容请关注搞代码(www.gaodaima.com)!