Symfony生成二维码的方法

 更新时间:2016年02月04日 09:55:39   作者:Terry  
这篇文章主要介绍了Symfony生成二维码的方法,实例分析了采用google开放api和PHP类库phpqrcode两种方法,并结合实例详细说明了Symfony下使用EndroidQrCodeBundle生成二维码的具体步骤与实现方法,需要的朋友可以参考下

本文实例讲述了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.'" 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) }}" />

本文永久地址:http://blog.it985.com/12340.html
本文出自 IT985博客 ,转载时请注明出处及相应链接。

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP图形与图片操作技巧汇总》、《php优秀开发框架总结》、《ThinkPHP入门教程》及《codeigniter入门教程

希望本文所述对大家基于Symfony框架的PHP程序设计有所帮助。

相关文章

  • PHP写的简单数字验证码实例

    PHP写的简单数字验证码实例

    下面小编就为大家带来一篇PHP写的简单数字验证码实例。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧
    2017-05-05
  • Thinkphp5分页后携带参数跳转传递功能实现

    Thinkphp5分页后携带参数跳转传递功能实现

    这篇文章主要介绍了Thinkphp5分页后携带参数进行跳转传递,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-06-06
  • php 正则 过滤html 的超链接

    php 正则 过滤html 的超链接

    php 过滤html 超链接的正则
    2009-06-06
  • PHPStudy hosts文件可能不存在或被阻止打开及同步hosts失败问题

    PHPStudy hosts文件可能不存在或被阻止打开及同步hosts失败问题

    这篇文章主要介绍了PHPStudy hosts文件可能不存在或被阻止打开,同步hosts失败,本文分步骤给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-05-05
  • TP5框架页面跳转样式操作示例

    TP5框架页面跳转样式操作示例

    这篇文章主要介绍了TP5框架页面跳转样式操作,结合实例形式分析了TP5框架移动设备支持及页面跳转样式定义相关操作技巧,需要的朋友可以参考下
    2020-04-04
  • PHP实现唤起微信支付功能

    PHP实现唤起微信支付功能

    这篇文章主要为大家详细介绍了PHP实现唤起微信支付功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-02-02
  • 深入PHP操作MongoDB的技术总结

    深入PHP操作MongoDB的技术总结

    本篇文章是对PHP操作MongoDB的技术进行了详细的分析介绍,需要的朋友参考下
    2013-06-06
  • PHP stream_context_create()函数的使用示例

    PHP stream_context_create()函数的使用示例

    这篇文章主要介绍了PHP stream_context_create()函数的使用示例,stream_context_create()函数是用来 创建打开文件的上下文件选项,用于fopen(),file_get_contents()等过程的超时设置、代理服务器、请求方式、头信息设置的特殊过程,需要的朋友可以参考下
    2015-05-05
  • php结合ajax实现赞、顶、踩功能实例

    php结合ajax实现赞、顶、踩功能实例

    这篇文章主要介绍了php结合ajax实现赞、顶、踩功能实例,包含PHP代码、JS代码和数据库端代码,非常详细,入门非常好的例子,需要的朋友可以参考下
    2014-05-05
  • PHP APP微信提现接口代码

    PHP APP微信提现接口代码

    这篇文章主要为大家详细介绍了PHP APP微信提现接口代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-09-09

最新评论