The solution to the garbled output of php qrcode: first open the corresponding PHP file; then find the part of the code that generates the QR code; finally add "die;" or "exit;" after the code.
The operating environment of this article: Windows 7 system, PHP version 7.1, DELL G3 computer
How to solve the garbled output of php qrcode?
Solution to the problem of garbled codes generated by phpqrcode.php and output to the page
After executing the code that generates the QR code, add die;
or exit;
is enough. If it still doesn't work, you can use programming tools to convert the .php file into "UTF-8 BOM-free encoding format"
<?php namespace app\index\controller; use think\Cache; use think\Controller; use think\Db; use think\Session; use think\Request; /**引入类库方式一(extend/phpqrcode.php)*/ import('phpqrcode', EXTEND_PATH); /* *二维码生成API接口(对外) */ class Qr extends Jcb{ public function api(){ if(!isset($_GET['text'])){ header("Content-type: text/html; charset=utf-8"); echo '参数错误.'; exit; } $text = strtoupper(trim($_GET['text'])); //访问频率 if(Cache::get($text)){ header("Content-type: text/html; charset=utf-8"); echo '请求频率太快,5秒内仅允许一次刷新';exit; }else{ Cache::set($text,'1',$this->config['visit-interval']); } //引入类库方式二(在vendor下创建phpqrcode目录,并且把phpqrcode.php文件放进去) //Vendor('phpqrcode.phpqrcode'); $errorCorrectionLevel =intval(2) ;//容错级别 $matrixPointSize = intval(4); //生成图片大小 $margin =1; //外边距离(白边) //方式一 \QRcode::png($text,false, $errorCorrectionLevel, $matrixPointSize, 1); //方式二 //$qr = new \QRcode(); //$qr->png($text,false, $errorCorrectionLevel, $matrixPointSize, 1); die; } }
Recommended learning: "PHP Video Tutorial"
The above is the detailed content of How to solve the garbled output of php qrcode. For more information, please follow other related articles on the PHP Chinese website!