Home  >  Article  >  Backend Development  >  Example code of php custom size verification code

Example code of php custom size verification code

WBOY
WBOYOriginal
2016-07-25 08:59:04737browse
  1. /**

  2. * php verification code customizable size
  3. * edit bbs.it-home.org
  4. */
  5. function vCode($num=4,$size=20, $width=0,$height=0){
  6. ! $width && $width = $num*$size*4/5+5;
  7. !$height && $height = $size + 10;
  8. // Removed 0 1 O l etc
  9. $str = "23456789abcdefghijkmnpqrstuvwxyzABCDEFGHIJKLMNPQRSTUVW";
  10. $code = '';
  11. for ($i=0; $i<$num; $i++){
  12. $code.= $str[mt_rand(0, strlen($str)-1)];
  13. }
  14. / / Draw an image
  15. $im = imagecreatetruecolor($width,$height);
  16. // Define the color to be used
  17. $back_color = imagecolorallocate($im, 235, 236, 237);
  18. $boer_color = imagecolorallocate($im, 118, 151, 199);
  19. $text_color = imagecolorallocate($im, mt_rand(0,200), mt_rand(0,120), mt_rand(0,120));

  20. // Draw background

  21. imagefilledrectangle($ im,0,0,$width,$height,$back_color);
  22. //Draw a border
  23. imagerectangle($im,0,0,$width-1,$height-1,$boer_color);
  24. //Draw interference Line
  25. for($i=0;$i<5;$i++){
  26. $font_color = imagecolorallocate($im, mt_rand(0,255), mt_rand(0,255), mt_rand(0,255));
  27. imagearc($im,mt_rand (-$width,$width),mt_rand(-$height,$height),mt_rand(30,$width*2),mt_rand(20,$height*2),mt_rand(0,360),mt_rand(0,360),$ font_color);
  28. }
  29. // Draw interference points
  30. for($i=0;$i<50;$i++){
  31. $font_color = imagecolorallocate($im, mt_rand(0,255), mt_rand(0,255), mt_rand(0,255 ));
  32. imagesetpixel($im,mt_rand(0,$width),mt_rand(0,$height),$font_color);
  33. }
  34. // Draw verification code
  35. @imagefttext($im, $size , 0, 5 , $size+3, $text_color, 'c://WINDOWS//Fonts//simsun.ttc',$code);
  36. header("Cache-Control: max-age=1, s-maxage=1, no -cache, must-revalidate");
  37. header("Content-type: image/png");
  38. imagepng($im);
  39. imagedestroy($im);
  40. }
  41. ?>

Copy code

Call example:

  1. //Verification code example
  2. //4 characters, size is 20
  3. vCode(4,20);
  4. ?>
Copy code


Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn