在PHP中生成二维码的方式有哪些

介绍

这篇文章给大家介绍在PHP中生成二维码的方式有哪些,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。

<>强利用Google API生成二维码

谷歌提供了较为完善的二维码生成接口,调用API接口很简单,以下是调用代码:

代码如下:


$ urlToEncode=癶ttps://www.jb51.net";
generateQRfromGoogle ($ urlToEncode);
/* *
, * google api二维码生成【QRcode可以存储最多4296个字母数字类型的任意文本,具体可以查看二维码数据格式】
, * @param字符串$的背影二维码包含的信息,可以是数字,字符,二进制信息,汉字。
,不能混合数据类型,数据必须经过utf - 8 url编码
, * @param int美元widhtHeight生成二维码的尺寸设置
, * @param字符串$ EC_level可选纠错级别,QR码支持四个等级纠错,用来恢复丢失的,读错的,模糊的,数据。
, *,,,,,,,,,,,,,,,,,,,,,,,,,,,L -默认:可以识别已损失的7%的数据
, *,,,,,,,,,,,,,,,,,,,,,,,,,,,M -可以识别已损失15%的数据
, *,,,,,,,,,,,,,,,,,,,,,,,,,,,Q -可以识别已损失25%的数据
, *,,,,,,,,,,,,,,,,,,,,,,,,,,,H -可以识别已损失30%的数据
, * @param int美元保证金生成的二维码离图片边框的距离
, */
函数generateQRfromGoogle(王晓初widhtHeight美元=& # 39;150 & # 39;,$ EC_level=& # 39; l # 39;,美元保证金=& # 39;0 & # 39;)
{
,,,美元的背影=urlencode(背影)美元;
,,,回声& # 39;https://www.yisu.com/zixun/& lt; img src=" http://chart.apis.google.com/chart?chs=" widhtHeight美元。‘x’。美元widhtHeight。
,,,,十=qr& chld=& # 39;。美元EC_level # 39;公司| & # 39;。美元保证金强生# 39;,背影=& # 39;。美元的背影强生# 39;“alt=癚R code"widhtHeight=? # 39;。美元widhtHeight强生# 39;
,,,“;widhtHeight=? # 39;。美元widhtHeight强生# 39;“/祝辞;& # 39;;
}

<强>使用PHP二维码生成类库PHP二维码生成二维码

PHP二维码是一个PHP二维码生成类库,利用它可以轻松生成二维码,官网提供了下载和多个演示演示,查看地址:http://phpqrcode.sourceforge.net/?br/>下载官网提供的类库后,只需要使用phpqrcode.php就可以生成二维码了,当然您的PHP环境必须开启支持GD2.phpqrcode.php提供了一个关键的png()方法,其中参数美元文本表示生成二位的的信息文本;参数美元外部档案表示是否输出二维码图片文件,默认否;参数美元水平表示容错率,也就是有被覆盖的区域还能识别,分别是L (QR_ECLEVEL_L, 7%), M (QR_ECLEVEL_M, 15%)、问(QR_ECLEVEL_Q, 25%)、H (QR_ECLEVEL_H 30%);参数美元尺寸表示生成图片大小,默认是3;参数美元保证金表示二维码周围边框空白区域间距值;参数美元saveandprint表示是否保存二维码并显示。

代码如下:


公共静态函数png(文本,输出文件=false美元,美元水平=QR_ECLEVEL_L大?3美元,美元保证金=4,,
$ saveandprint=false),
{
,,,美元enc=QRencode::工厂(水平,规模,美元美元保证金);
,,,返回$ enc→encodePNG(文本,输出文件,美元saveandprint美元=false);
}


调用PHP二维码非常简单,如下代码即可生成一张内容为“https://www.jb51.net"的二维码。

代码如下:


包括& # 39;phpqrcode.php& # 39;;
QRcode:: png (& # 39; https://www.jb51.net& # 39;);


那么实际应用中,我们会在二维码的中间加上自己的标志,已增强宣传效果。那如何生成含有标志的二维码呢?其实原理很简单,先使用PHP二维码生成一张二维码图片,然后再利用PHP的形象相关函数,将事先准备好的标志图片加入到刚生成的原始二维码图片中间,然后重新生成一张新的二维码图片。

代码如下:


包括& # 39;phpqrcode.php& # 39;,,https://www.yisu.com/zixun/
$ value=' https://www.jb51.net ';//二维码内容
$ errorCorrectionLevel=& # 39; l # 39;;//容错级别
matrixPointSize=6;美元//生成图片大小
//生成二维码图片
QRcode:: png(美元价值,& # 39;qrcode.png& # 39;, errorCorrectionLevel美元,matrixPointSize美元,2);
$标志=& # 39;logo.png& # 39;;//准备好的标志图片
$ QR=& # 39; qrcode.png& # 39;;//已经生成的原始二维码图
,
if ($ logo !==FALSE) {
,,,$ QR=imagecreatefromstring (file_get_contents (QR)美元);
,,,美元标志=imagecreatefromstring (file_get_contents(标志)美元);
,,,$ QR_width=imagesx (QR);//二维码图片宽度
,,,$ QR_height=imagesy (QR);//二维码图片高度
,,,(logo_width=imagesx美元标志);//标志图片宽度
,,,(logo_height=imagesy美元标志);//标志图片高度
,,,logo_qr_width=QR_width/5美元;
,,,美元规模=logo_width/logo_qr_width美元;

在PHP中生成二维码的方式有哪些