程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> 網頁編程 >> PHP編程 >> PHP綜合 >> Symfony生成二維碼的方法

Symfony生成二維碼的方法

編輯:PHP綜合

本文實例講述了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程序設計有所幫助。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved