You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

46 lines
1.2 KiB

7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
  1. <?php
  2. namespace App\Http\Controllers\Api;
  3. use App\Http\Controllers\Api\CommonController;
  4. use Illuminate\Http\Request;
  5. use App\Common\ReturnData;
  6. use App\Common\Helper;
  7. //二维码,如果输出乱码就转成base64输出
  8. class QrcodeController extends CommonController
  9. {
  10. public function __construct()
  11. {
  12. parent::__construct();
  13. }
  14. public function createSimpleQrcode(Request $request)
  15. {
  16. //参数
  17. $url = $request->input('url','');
  18. $size = $request->input('size', 150);
  19. $is_binary = $request->input('is_binary',0); //0表示不是二进制,1表示二进制流base64
  20. if($url=='')
  21. {
  22. return ReturnData::create(ReturnData::PARAMS_ERROR);
  23. }
  24. if($is_binary==1){return Helper::qrcode($url,$size);}
  25. return '<img src="'.Helper::qrcode($url,$size).'">';
  26. }
  27. //二维码
  28. public function qrcode()
  29. {
  30. $url = $_REQUEST['url'];
  31. $url = str_replace("%26","&",$url);
  32. $url = str_replace("%3F","?",$url);
  33. $url = str_replace("%3D","=",$url);
  34. require_once(resource_path('org/phpqrcode/phpqrcode.php'));
  35. return \QRcode::png($url,false,"H",6);
  36. }
  37. }