CommonController.class.php 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. <?php
  2. namespace Api\Controller;
  3. use Think\Controller;
  4. class CommonController extends BaseController {
  5. //生成二维码
  6. public function qrcode(){
  7. Vendor('Phpqrcode.phpqrcode');
  8. $url = I("url");
  9. $url = urldecode($url) ? urldecode($url) : $url;
  10. $size = I("size") ? I("size") : 6;
  11. $object = new \QRcode();
  12. $object->png($url, false, 3 , $size, 2);
  13. }
  14. //生成验证码
  15. public function verify(){
  16. //生成验证码图片
  17. Header("Content-type: image/PNG");
  18. $im = imagecreate(44,18); // 画一张指定宽高的图片
  19. $back = ImageColorAllocate($im, 245,245,245); // 定义背景颜色
  20. imagefill($im,0,0,$back); //把背景颜色填充到刚刚画出来的图片中
  21. $vcodes = "";
  22. srand((double)microtime()*1000000);
  23. //生成4位数字
  24. for($i=0;$i<4;$i++){
  25. $font = ImageColorAllocate($im, rand(100,255),rand(0,100),rand(100,255)); // 生成随机颜色
  26. $authnum=rand(1,9);
  27. $vcodes.=$authnum;
  28. imagestring($im, 5, 2+$i*10, 1, $authnum, $font);
  29. }
  30. $_SESSION['v_code'] = $vcodes;
  31. for($i=0;$i<200;$i++) //加入干扰象素
  32. {
  33. $randcolor = ImageColorallocate($im,rand(0,255),rand(0,255),rand(0,255));
  34. imagesetpixel($im, rand()%70 , rand()%30 , $randcolor); // 画像素点函数
  35. }
  36. ImagePNG($im);
  37. ImageDestroy($im);
  38. }
  39. }