【发布时间】:2017-01-26 21:48:58
【问题描述】:
我正在使用PHP QR Code 库来生成二维码。
我包含了库,从数据库中获取用户信息后,我正在尝试创建 qrcode。然后将生成的二维码的路径返回给前端,这样我就可以把它传递给一个图片标签展示给用户了。
我正在从数据库中获取姓名、ID、电子邮件和用户图像路径。我想将用户图像包含到 qrcode 中,所以我获取内容并将其编码为字符串。
我没有收到错误。我检查了文件夹,没有保存二维码。
require_once 'externalLibraries/qrcode/qrlib.php';
// how to build raw content - QRCode with Business Card (VCard) + photo
$tempDir = QRCODE_PATH; //saves temporary directory path
// we building raw data
$codeContents = 'BEGIN:VCARD'."\n";
$codeContents .= 'FN:'.$name."\n";
$codeContents .= 'ID:'.$id."\n";
$codeContents .= 'EMAIL:'.$email."\n";
$codeContents .= 'PHOTO;JPEG;ENCODING=BASE64:'.base64_encode(file_get_contents('../'.$userAvatar))."\n";
$codeContents .= 'END:VCARD';
// generating
QRcode::png($codeContents, $tempDir.$clientid.'.png', 4, 3);
// displaying
return QRCODE_PATH.$clientid.'.png';
这是生成二维码的方式吗?
【问题讨论】:
-
你的图片尺寸是多少,你要把它退回到哪里?
-
我将此返回给我的角度服务。图片是用户头像。我猜编码它会导致一个长字符串。 @RST
-
-
还有其他方法可以在二维码中包含图像吗? @RST
-
由于二维码可以处理的大小限制,您可以使用我在下面的答案中描述的方法(调整图像大小,链接到图像)。