PHP 之phpqrcode类库生成二维码

<?php
/**
 * Created by PhpStorm.
 * User: 25754
 * Date: 2019/6/4
 * Time: 15:53
 */

include "./phpqrcode.php";

//二维码信息,用urlencode编码
$vcard = "http://www.boyuan.com/mobile/work.php?action=do&username=qn1556515018";
$data = urlencode($vcard);
$errorCorrectionLevel = 'L';//容错级别
$matrixPointSize = 7;//生成图片大小
//生成二维码图片
QRcode::png($data, 'qrcode.png', $errorCorrectionLevel, $matrixPointSize, 2);
//$logo = 'logo.png';//准备好的logo图片
$logo = FALSE;
$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, $QR = 'qrcode.png');
}
$qrcode = file_get_contents($QR);
header('Content-type: image/png');
echo $qrcode;
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>生成二维码</title>
    <style>
        img{
            position: absolute;
            top: 50%;
            left: 50%;
            margin-left: -129.5px;
            margin-top: -300px;
        }
    </style>
</head>
<body>
<img src="http://www.boyuan.com/api/a/phpqrcodeDemo/qrcode.php" alt="">
</body>
</html>

效果如图:

 注意:url地址不要urlencode

posted @ 2019-06-04 16:46  样子2018  阅读(194)  评论(0编辑  收藏  举报