Symfony生成二维码的方法
发布:smiling 来源: PHP粉丝网 添加日期:2021-07-09 10:37:06 浏览: 评论:0
这篇文章主要介绍了Symfony生成二维码的方法,实例分析了采用google开放api和PHP类库phpqrcode两种方法,并结合实例详细说明了Symfony下使用EndroidQrCodeBundle生成二维码的具体步骤与实现方法,需要的朋友可以参考下
本文实例讲述了Symfony生成二维码的方法。分享给大家供大家参考,具体如下:
现在网上能搜到很多关于使用PHP生成二维码的例子,主要是两种方法:
第一种:google开放api,如下:
- $urlToEncode="http://www.phpfensi.com";
- generateQRfromGoogle($urlToEncode);
- function generateQRfromGoogle($chl, $widhtHeight = '150', $EC_level = 'L', $margin = '0')
- {
- $url = urlencode($url);
- echo '<img src="http://chart.apis.google.com/chart?chs='.$widhtHeight.'x'.$widhtHeight.'&cht=qr&chld='.$EC_level.'|'.$margin.'&chl='.$chl.'" alt="QR code" />';
- }
附:API接口地址 https://developers.google.com/chart/infographics/docs/qr_codes
第二种:使用PHP类库 PHP QR CODE
官方地址:http://phpqrcode.sourceforge.net/
下载地址:http://sourceforge.net/projects/phpqrcode/
使用方法:
- <?php
- // include这两个文件之一:
- /*
- qrlib.php for full version (also you have to provide all library files
- form package plus cache dir)
- OR phpqrcode.php for merged version (only one file,
- but slower and less accurate code because disabled cache
- and quicker masking configured)
- */
- // 两句话解释:
- // 包含qrlib.php的话需要同其它文件放到一起:文件、文件夹。
- // phpqrcode.php是合并后版本,只需要包含这个文件,但生成的图片速度慢而且不太准确
- include('./phpqrcode/phpqrcode.php');
- // 以下给出两种用法:
- // 创建一个二维码文件
- QRcode::png('code data text', 'filename.png');
- // creates file
- // 生成图片到浏览器
- QRcode::png('some othertext 1234');
- ?>
附官方示例代码地址:http://phpqrcode.sourceforge.net/examples/index.php
当然,还有其他方法生成二维码,这里就不一一介绍了。
下面我们说一下在Symfony下使用EndroidQrCodeBundle生成二维码:
1、使用composer安装,代码如下:
composer require endroid/qrcode-bundle
2、在kernel中注册
- <?php
- // app/AppKernel.php
- public function registerBundles()
- {
- $bundles = array(
- // ...
- new Endroid\Bundle\QrCodeBundle\EndroidQrCodeBundle(),
- );
- }
3、定义访问路由
- EndroidQrCodeBundle:
- resource: "@EndroidQrCodeBundle/Controller/"
- type: annotation
- prefix: /qrcode
4、配置 config.xml
- endroid_qr_code:
- size: 100
- padding: 10
- extension: gif
- error_correction_level: high
- foreground_color: { r: 0, g: 0, b: 0, a: 0 }
- background_color: { r: 255, g: 255, b: 255, a: 0 }
- #label: "My label"
- #labelFontSize: 16
5、在twig中使用
普通文本生成方式:
- <img src="{{ qrcode_url(message) }}" />
- <img src="{{ qrcode_url(message, extension='png') }}" />
- <img src="{{ qrcode_url(message, size=150) }}" />
链接生成方式:
<img src="{{ qrcode_data_uri(message, size=200, padding=10) }}" />
Tags: Symfony生成二维码
推荐文章
热门文章
最新评论文章
- 写给考虑创业的年轻程序员(10)
- PHP新手上路(一)(7)
- 惹恼程序员的十件事(5)
- PHP邮件发送例子,已测试成功(5)
- 致初学者:PHP比ASP优秀的七个理由(4)
- PHP会被淘汰吗?(4)
- PHP新手上路(四)(4)
- 如何去学习PHP?(2)
- 简单入门级php分页代码(2)
- php中邮箱email 电话等格式的验证(2)