This article mainly describes the generation of random strings and Verification code class PHP instance, the need for friends can refer to the
There are a lot of PHP random numbers and code codes with the article, the real application of the few. Just do it yourself. Start this section of the PHP tutorial bar, the following implementation of the code, mainly to make a good distinction between a get_code (), another create_check_image (), output image directly after the call, session () to take the verification code directly Get_code ( OK, incidentally, you must put the Session_star () in front of you when using session. Code as follows: code as follows: <?php class Randcheckcode { /* Function name: Get_code () &NBSP ; * Function: Get random string * Parameters: 1, (int) $length = #随机字符长度 2, (int) $mode = 0 #随机字符类型, 0 for uppercase and digital, 1 for digits, 2 for lowercase, 3 for uppercase letters, &N Bsp 4 for uppercase and lowercase letters, 5 for capitals and numbers, 6 for lowercase and digital * return: Obtained string / &NB Sp function Get_code ($length =32, $mode =0)//Get random captcha function { & nbsp switch ($mode) { &NBsp Case ' 1 ': $STR = ' 123456789 '; break; case ' 2 ': $STR = ' abcdefghijklmnopqrstuvwxyz '; break; case ' 3 ': $STR = ' abcdefghijklmnopqrstuvwxyz '; break; &NBsp case ' 4 ': , $STR = ' Abcdefghijklmnopqrstuvwxyzabcdefghijklmnopqrstuvwxyz '; break; case ' 5 ': $STR = ' ABCDEFGHIJKLMNOPQRSTUVWXYZ123456 7890 '; break; case ' 6 ': $STR = ' abcdefghijklmnopqrstuvwxyz123456 7890 '; &nBsp break; default: & nbsp $STR = ' ABCDEFGHIJKLMNOPQRSTUVWXYZABCDEFGHIJKL mnopqrstuvwxyz1234567890 '; break; $CHECKST R= '; $len =strlen ($STR)-1; for ($i =0 $i < $length $i + +) & nbsp { //$num =rand (0, $len) Generates a random number between 0 and $len &NBsp $num =mt_rand (0, $len);//Generate a random number between 0 and $len &NBSP ; $CHECKSTR. = $str [$num]; &NB Sp } return $checkstr; } /** function name: Create_check_image () function: Generate a check code Pictures parameters Number: $checkcode: Checksum code string return value: Back to this picture/ function Create_check_image ($checkcode)//Generate a { &NB Sp $im =imagecreate (65,22)//Generate a picture $black =IMAGEC Olorallocate ($im, 0,0,0);//Background color &NBSP $white =imagecolorallocate ($im, 255,255,255);//foreground color $ Gray=imagecolorallocate ($im, 200,200,200); Imagefill ($im, 30,30, $gray)//in $im image coordinates 30,30 (0,0 in upper left corner of image) $gray Color execution area padding (that is, the same color as the 30, 30 points will be populated) imagestring ($im, 5,8,3,$ Checkcode, $white);//$white The string $checkcode to the 8, 3 coordinates of the image represented by $im (this is the upper-left corner of the string, the upper-left corner of the image is 0,0), 5 is the font size, the font can only be 1,2,3,4 or 5, Using built-in fonts for ($i =0 $i <120; $i + +) &NBSP ; { $randcolor =imag Ecolorallocate ($im, Rand (0,255), Rand (0,255), Rand (0,255)); Imagesetpixel ($im, Rand ()%70,rand ()%30, $randcolor)//on $im images with $randcolor color in (rand ()%70,rand ()%30) coordinates (imageTop left corner for 0,0) draw a dot & nbsp Header ("Content-type:image/png"); imagepng ($im)//In PNG format to output the image to the browser or file &NB Sp Imagedestroy ($IM)//Destroy image $im }}/* $randcode =new randcheckcode (); $checkstring = $randcode->get_code (5,7); $image = $randcode->create_check_image ($checkstring); Echo $image; * * ?>