本文实例讲述了Symfony生成二维码的方法。分享给大家供大家参考,具体如下:
现在网上能搜到很多关于使用PHP生成二维码的例子,主要是两种方法:
第一种:google开放api,如下:
$urlToEncode="http://blog.it985.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.'" style="color: rgb(0, 102, 153); text-decoration: none;" target="_blank">本站下载。使用方法:
<?php// include这两个文件之一:/*qrlib.php for full version (also you have to provide all library filesform package plus cache dir)OR phpqrcode.php for merged version (only one file,but slower and less accurate code because disabled cacheand 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.phppublic function registerBundles(){ $bundles = array( // ... new Endroid/Bundle/QrCodeBundle/EndroidQrCodeBundle(), );}3、定义访问路由
EndroidQrCodeBundle: resource: "@EndroidQrCodeBundle/Controller/" type: annotation prefix: /qrcode4、配置 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: 165、在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) }}" />
本文永久地址:http://blog.it985.com/12340.html
本文出自 IT985博客 ,转载时请注明出处及相应链接。
注:相关教程知识阅读请移步到PHP教程频道。