天天看點

如何生成二維碼方案分享(php版)

php生成二維碼方法有兩種 

  1.利用Google API生成二維碼(谷歌不穩定) 

  2.使用PHP二維碼生成類庫PHP QR Code生成二維碼 

  這個文章主要分享第二種使用類庫PHP QR Code生成二維碼 

1.php類庫PHP QR Code擷取 

  附件下載下傳:

download:phpqrcode.zip   官網下載下傳: [url]http://phpqrcode.sourceforge.net/[/url]   支付寶sdk: [url]https://docs.open.alipay.com/54[/url]

2. 把PHP QR Code和支付寶sdk導入自己的項目,引用檔案這些就不廢話了 

   注意:沙箱環境測試,正式環境請自己修改網關和appid和私鑰公鑰 

  示例代碼

<?php
/**
 * 2017-07-21 by 我是個導演
 * 歡迎通路支付寶論壇:[url]https://openclub.alipay.com/index.php[/url]
 */
//引入核心庫檔案
require_once  'phpqrcode/phpqrcode.php';
require_once 'AopSdk.php';
         
$aop = new AopClient ();
$aop->gatewayUrl = 'https://openapi.alipaydev.com/gateway.do';
$aop->appId = '填寫你的沙箱appid';
$aop->rsaPrivateKey = '填寫你的沙箱環境RSA2私鑰';
$aop->alipayrsaPublicKey='填寫你的沙箱環境RSA的支付寶公鑰';
$aop->apiVersion = '1.0';
$aop->postCharset='utf-8';
$aop->format='json';
$aop->signType = 'RSA2';
$date=date("YmdHis");
$arr=range(1000,9999);
shuffle($arr);
         
$request = new AlipayTradePrecreateRequest();
$request->setBizContent("{"out_trade_no":"".$date.$arr[0]."","total_amount":0.01,"subject":"二維碼測試"}");
//$request->setNotifyUrl("填寫自己的http或https的回調位址(異步通知位址)");
$result = $aop->execute($request);
//var_dump($result);
$responseNode = str_replace(".", "_", $request->getApiMethodName()) . "_response";
//獲得輸出支付寶傳回二維碼連結
$qrCode = $result->$responseNode->qr_code;
         
//定義糾錯級别
$errorLevel = "L";
//定義生成圖檔寬度和高度;預設為3
$size = "4";
//調用QRcode類的靜态方法png生成二維碼圖檔//
QRcode::png($qrCode, false, $errorLevel, $size);
//生成網址類型
$url="https://openclub.alipay.com/index.php";
$url.="rn";
QRcode::png($url, false, $errorLevel, $size);
?>      

3.demo分享(直接運作項目所有代碼已經放到index.php中,僅供大家參考和友善根據自己的需求進行開發內建): 

  生成二維碼接口demo(UTF-8版):

download:F2F.zip

最後如果大家有什麼疑問歡迎在文章追問,如果解決了您的疑問歡迎評論點贊支援一下