> php教程 > php手册 > 微信支付开发(11) Native支付,native支付

微信支付开发(11) Native支付,native支付

WBOY
풀어 주다: 2016-06-13 09:26:56
원래의
1164명이 탐색했습니다.

微信支付开发(11) Native支付,native支付

关键字:微信公众平台 微信支付 Native原生支付
作者:方倍工作室
原文:http://www.cnblogs.com/txw1958/p/wxpay-native.html

 

在这篇微信公众平台开发教程中,我们将介绍如何开发实现微信支付的Native功能。

本文分为以下三个部分:


一、生成Native支付URL

Native(原生)支付URL是一系列具有weixin://wxpay/bizpayurl?前缀的URL,同时后面紧跟着一系列辨别商户的键值对。Native(原生)支付URL的规则如下:

weixin://wxpay/bizpayurl?sign=XXXXX&appid=XXXXXX&productid=XXXXXX×tamp=XXXXXX&noncestr=XXXXXX

 生成代码如下

<span>1</span> <?<span>php
</span><span>2</span> <span>include_once</span>("WxPayHelper.php"<span>);
</span><span>3</span> <span>$wxPayHelper</span> = <span>new</span><span> WxPayHelper();
</span><span>4</span> <span>echo</span> <span>$wxPayHelper</span>->create_native_url("1234567890"<span>);
</span><span>5</span> ?>
로그인 후 복사

其中productid是商品唯一id,开发人员需要定义并维护自己的商品id,这个id与一张订单等价,微信后台凭借该id通过POST商户后台获取交易信息。

上述代码生成的URL如下:

weixin://wxpay/bizpayurl?appid=wxb489e8caeabcdefg<span>&noncestr</span>=BBvdr5atZ9D7s08X<span>&productid</span>=1234567890<span>&sign</span>=e15d2466a85cd62b530e2f690604e7502f67ccb5<span>&timestamp</span>=1408025996
로그인 후 복사

二、生成二维码

生成二维码可以用第三方接口,也可以使用自己的代码或插件,这里介绍PHP QR Code。

PHP QR Code是一个PHP二维码生成类库,利用它可以轻松生成二维码,官网提供了下载和多个演示demo,查看地址:http://phpqrcode.sourceforge.net/。

其生成二维码的语法非常简单,直接填入URL当参数即可。范例如下

<span>include</span> 'phpqrcode.php'<span>; 
QRcode</span>::png('http://www.cnblogs.com/txw1958/');
로그인 후 복사

这样就生成了一个支付的二维码。

三、生成Package

当用户扫描上述二维码的时候,会调用Native支付URL,URL需要调用订单信息Package返回给用户,而该Package由WxPayHelper类的create_native_package()实现,调用代码如下:

<span> 1</span> <?<span>php
</span><span> 2</span> <span>include_once</span>("WxPayHelper.php"<span>);
</span><span> 3</span> 
<span> 4</span> <span>$commonUtil</span> = <span>new</span><span> CommonUtil();
</span><span> 5</span> <span>$wxPayHelper</span> = <span>new</span><span> WxPayHelper();
</span><span> 6</span> <span>$wxPayHelper</span>->setParameter("bank_type", "WX"<span>);
</span><span> 7</span> <span>$wxPayHelper</span>->setParameter("body", "方倍工作室微信支付开发教程"<span>);
</span><span> 8</span> <span>$wxPayHelper</span>->setParameter("partner", "1900000109"<span>);
</span><span> 9</span> <span>$wxPayHelper</span>->setParameter("out_trade_no", <span>$commonUtil</span>-><span>create_noncestr());
</span><span>10</span> <span>$wxPayHelper</span>->setParameter("total_fee", "1"<span>);
</span><span>11</span> <span>$wxPayHelper</span>->setParameter("fee_type", "1"<span>);
</span><span>12</span> <span>$wxPayHelper</span>->setParameter("notify_url", "htttp://www.baidu.com"<span>);
</span><span>13</span> <span>$wxPayHelper</span>->setParameter("spbill_create_ip", "127.0.0.1"<span>);
</span><span>14</span> <span>$wxPayHelper</span>->setParameter("input_charset", "GBK"<span>);
</span><span>15</span> <span>echo</span> <span>$wxPayHelper</span>-><span>create_native_package();
</span><span>16</span> ?>
로그인 후 복사

当用户扫描二维码后,将直接跳到商品页面,如下所示

 

这样一个Native支付就形成了。

 

微信公众平台开通微信支付必须要开发者模式或者与第三方合作?

这个一般都是要找第三方来写支付接口的,自己弄比较麻烦
 

微信支付接口技术开发文档

找官网啊,昨天微信支付开放申请了
 

원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 추천
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿