
PHP微信支付服务端解决方案(涵盖APP、公众号、H5及扫码支付)
5星
- 浏览量: 0
- 大小:None
- 文件类型:None
简介:
本方案提供全面的PHP微信支付接口实现,适用于APP、公众号、H5和扫码支付场景,助力开发者快速接入并管理各类支付功能。
2018年9月3日整理了PHP服务端微信支付SDK的封装工作。如果觉得有用,请给予好评。
环境配置:在WeChatConfig文件下进行配置。
开发环境:基于ThinkPHP5(tp5)框架,使用php 5.6版本
调用统一下单接口如下:
```php
include_once EXTEND_PATH . WeChatSDK/WeChatSDK.php;
$data = $this->getOrderInfo($pay_sn);
if (!$data) {
return $this->resultCode(-2019, 订单不存在或已支付);
}
$WeixinPay = new \WeChatSDK();
switch ($trade_type) {
case JSAPI:
// 当前没有实现此功能
break;
case NATIVE:
$product_id = $pay_sn;
break;
case MWEB:
$product_id = $pay_sn;
break;
case APP:
$product_id = $pay_sn;
break;
}
$out_trade_no = $pay_sn;
$result = $WeixinPay->setWeiXinPay($data[pay_body], $data[pay_detail], intval($data[pay_money] * 100), $out_trade_no, $red_url, $trade_type);
// APP加密:$WeChatSDK->GetAppParameters($result[data]);
// Web编码: $WeChatSDK->GetMwebApiParameters();
// JSAPI参数获取: WeChatSDK-> GetJsApiParameters();
回调调用代码如下:
```php
include_once EXTEND_PATH . WeChatSDK/WeChatSDK.php;
Log::write(gwgwgwgw---------------------------------进入异步回掉);
$postStr = file_get_contents(php://input);
Log::write(gwgwgwgw--------------------------------- . $postStr);
$WeChatSDK = new \WeChatSDK();
if (!empty($postStr)) {
$postObj = simplexml_load_string($postStr, SimpleXMLElement, LIBXML_NOCDATA);
$check_sign = $WeChatSDK->checkSign($postObj, $postObj->sign);
Log::write(-----check_sign------- . $check_sign . ------------check_sign--------------);
if ($postObj->result_code == SUCCESS && $check_sign == 1) {
model(order, service)->affirmPayment($postObj->out_trade_no);
$xml =
全部评论 (0)


