There is no QR code related library in Thinkphp, so we can complete the function of generating QR codes by integrating phpqrcode.
Create a new directory phpqrcode under "ThinkPHP\Library\Vendor\" and extract the contents of the compressed package to this folder Down.
Add the following method under the IndexController controller:
public function qrcode($url="www.baidu.com",$level=3,$size=4) { Vendor('phpqrcode.phpqrcode'); $errorCorrectionLevel =intval($level) ;//容错级别 $matrixPointSize = intval($size);//生成图片大小 //生成二维码图片 $object = new \QRcode(); $object->png($url, false, $errorCorrectionLevel, $matrixPointSize, 2); }
Visit: 127.0.0.1/Index/qrcode to see the generated QR code QR code.
First call phpqrcode to generate a QR code, and then use php's image related functionAdd the logo image to the generated QR code on the picture.
include 'phpqrcode.php'; $value = 'http://www.cnblogs.com/txw1958/'; //二维码内容 $errorCorrectionLevel = 'L';//容错级别 $matrixPointSize = 6;//生成图片大小 //生成二维码图片 QRcode::png($value, 'qrcode.png', $errorCorrectionLevel, $matrixPointSize, 2); $logo = 'logo.png';//准备好的logo图片 $QR = 'qrcode.png';//已经生成的原始二维码图 if ($logo !== FALSE) { $QR = imagecreatefromstring(file_get_contents($QR)); $logo = imagecreatefromstring(file_get_contents($logo)); $QR_width = imagesx($QR);//二维码图片宽度 $QR_height = imagesy($QR);//二维码图片高度 $logo_width = imagesx($logo);//logo图片宽度 $logo_height = imagesy($logo);//logo图片高度 $logo_qr_width = $QR_width / 5; $scale = $logo_width/$logo_qr_width; $logo_qr_height = $logo_height/$scale; $from_width = ($QR_width - $logo_qr_width) / 2; //重新组合图片并调整大小 imagecopyresampled($QR, $logo, $from_width, $from_width, 0, 0, $logo_qr_width, $logo_qr_height, $logo_width, $logo_height); } //输出图片 imagepng($QR, 'helloweixin.png'); echo '<img src="helloweixin.png">';
Related articles:
How to obtain thinkphp3.2.3 upload file path
##Example of Thinkphp3.2.3 integrating phpqrcode to generate QR code Code sharing
PHP implements file upload without page refresh
Uses Html5 to implement asynchronous file upload, supports cross-domain, and has upload progress bar
The above is the detailed content of Thinkphp3.2.3 integrates phpqrcode to generate QR code sample code sharing. For more information, please follow other related articles on the PHP Chinese website!