Download the PHP package ethenoscar2011/pt-wechatpay-php without Composer
On this page you can find all versions of the php package ethenoscar2011/pt-wechatpay-php. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.
Download ethenoscar2011/pt-wechatpay-php
More information about ethenoscar2011/pt-wechatpay-php
Files in ethenoscar2011/pt-wechatpay-php
Package pt-wechatpay-php
Short Description [A]Sync Chainable WeChatPay v2&v3's OpenAPI SDK for PHP - Compatible with PHP 5.6+
License Apache-2.0
Homepage https://pay.weixin.qq.com/
Informations about the package pt-wechatpay-php
微信支付 WeChatPay OpenAPI SDK (PHP 5.6+ 兼容版)
[A]Sync Chainable WeChatPay v2&v3's OpenAPI SDK for PHP - 兼容 PHP 5.6+
概览
基于 Guzzle HTTP Client 的微信支付 PHP 开发库,兼容 PHP 5.6+ 版本。
功能介绍
-
微信支付 APIv2 和 APIv3 的 Guzzle HTTP 客户端,支持 异步 发送请求,并自动进行请求签名和应答验签
-
链式实现的 URI Template
-
敏感信息加解密
- 回调通知的验签和解密
项目状态
当前版本为 1.4.12 版,基于官方 wechatpay-php 重构,兼容 PHP 5.6+ 版本。
项目版本遵循 语义化版本号。
环境要求
项目支持的环境如下:
- PHP >= 5.6.0
- Guzzle 6.0+ 或 7.0+
- ext-curl, ext-libxml, ext-simplexml, ext-openssl
我们推荐使用目前处于 Active Support 阶段的 PHP 8 和 Guzzle 7。
安装
推荐使用 PHP 包管理工具 Composer 安装 SDK:
开始
:information_source: 以下是 微信支付 API v3 的指引。如果你是 API v2 的使用者,请看 README_APIv2。
概念
-
商户 API 证书,是用来证实商户身份的。证书中包含商户号、证书序列号、证书有效期等信息,由证书授权机构(Certificate Authority ,简称 CA)签发,以防证书被伪造或篡改。详情见 什么是商户API证书?如何获取商户API证书? 。
-
商户 API 私钥。你申请商户 API 证书时,会生成商户私钥,并保存在本地证书文件夹的文件 apiclient_key.pem 中。为了证明 API 请求是由你发送的,你应使用商户 API 私钥对请求进行签名。
:key: 不要把私钥文件暴露在公共场合,如上传到 Github,写在 App 代码中等。
-
微信支付平台证书。微信支付平台证书是指:由微信支付负责申请,包含微信支付平台标识、公钥信息的证书。你需使用微信支付平台证书中的公钥验证 API 应答和回调通知的签名。
:bookmark: 通用的 composer 命令,像安装依赖包一样 下载平台证书 文件,供SDK初始化使用。
-
证书序列号。每个证书都有一个由 CA 颁发的唯一编号,即证书序列号。
-
微信支付公钥,用于应答及回调通知的数据签名,可在 微信支付商户平台 -> 账户中心 -> API安全 直接下载。
- 微信支付公钥ID,是微信支付公钥的唯一标识,可在 微信支付商户平台 -> 账户中心 -> API安全 直接查看。
初始化一个APIv3客户端
示例,第一个请求:查询「微信支付平台证书」
与官方版本的主要差异
本版本基于官方 wechatpay-php 重构,主要变化包括:
- 移除严格类型声明:去除了
declare(strict_types=1)和所有类型声明,兼容 PHP 5.6 - 移除 PHP 7+ 特性:去除了
#[\SensitiveParameter]属性、变长参数等 - 调整依赖版本:确保 Guzzle 版本兼容 PHP 5.6
- 保持功能完整性:所有核心功能保持不变,API 接口完全兼容
兼容性测试
本版本已在以下 PHP 版本中测试通过:
- PHP 5.6.40
- PHP 7.3.32
- PHP 8.1.29
常见问题
如何下载平台证书?
使用内置的微信支付平台证书下载器。
证书和回调解密需要的AesGcm解密在哪里?
请参考AesGcm.php,例如内置的平台证书下载工具解密代码如下:
如何加载公/私钥和证书
v1.2提供了统一的加载函数 Rsa::from($thing, $type)。
Rsa::from($thing, $type)支持从文件/字符串加载公/私钥和证书,使用方法可参考 RsaTest.phpRsa::fromPkcs1是个语法糖,支持加载PKCS#1格式的公/私钥,入参是base64字符串Rsa::fromPkcs8是个语法糖,支持加载PKCS#8格式的私钥,入参是base64字符串Rsa::fromSpki是个语法糖,支持加载SPKI格式的公钥,入参是base64字符串Rsa::pkcs1ToSpki是个RSA公钥格式转换函数,入参是base64字符串
联系我们
如果你发现了BUG或者有任何疑问、建议,请通过issue进行反馈。
也欢迎访问我们的开发者社区。
链接
License
Apache-2.0 License
All versions of pt-wechatpay-php with dependencies
ext-curl Version *
ext-libxml Version *
ext-openssl Version *
ext-simplexml Version *
guzzlehttp/guzzle Version ^6.0
spomky-labs/php-aes-gcm Version ^1.2