您的位置:首页 > 编程语言 > PHP开发

php数字运算验证码的实现代码

2015-07-30 00:00 971 查看

本文实例讲述了php实现数字运算验证码的方法,具体实现方法如下:

<?php
getValidate(100,30);
 
function getValidate($w,$h){
  $img = imagecreate($w,$h);
 
  $gray = imagecolorallocate($img,255,255,255);
  $black = imagecolorallocate($img,rand(0,200),rand(0,200),rand(0,200));
  $red = imagecolorallocate($img, 255, 0, 0);
  $white = imagecolorallocate($img, 255, 255, 255);
  $green = imagecolorallocate($img, 0, 255, 0);
  $blue = imagecolorallocate($img, 0, 0, 255);
  imagefilledrectangle($img, 0, 0, 100, 30, $black);
 
 
  for($i = 0;$i < 80;$i++){
    imagesetpixel($img, rand(0,$w), rand(0,$h), $gray);
  }
 
 
  $num1 = rand(1,99);
  $num2 = rand(1,99);
 
  imagestring($img, 5, 5, rand(1,10), $num1, $red);
  imagestring($img,5,30,rand(1,10),getRand(), $white);
  imagestring($img,5,45,rand(1,10),$num2, $green);
  imagestring($img,5,65,rand(1,10),"=", $blue);
  imagestring($img,5,80,rand(1,10),"?", $red);
   
 
  header("content-type:image/png");
  imagepng($img);
  imagedestroy($img);
}
function getRand(){
  $code = rand(0,1);
  switch ($code) {
    case 0:
      return "+";
      break;
    case 1:
      return "-";
      break;
    default:
      # code...
      break;
  }
}
 
?>


实现效果:



以上介绍的就是使用php实现数字运算验证码的方法,希望对大家的学习有所帮助。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: