利用php怎么实现一个数字运算验证码功能

利用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怎么实现一个数字运算验证码功能问题的解答就分享到这里了,希望以上内容可以对大家有一定的帮助,如果你还有很多疑惑没有解开,可以关注行业资讯频道了解更多相关知识。