基于PHP的微信支付教程 互动版

在线工具推荐: Three.js AI纹理开发包 - YOLO合成数据生成器 - GLTF/GLB在线编辑 - 3D模型格式在线转换 - 可编程3D场景编辑器

发起支付第一步

1,发起支付请求

在获取了OpenId之后,我们就可以组合订单了。下面是一个标准的组合例子

$input = new WxPayUnifiedOrder();
/** SetBody 设置商品或支付单简要描述 */
$input->SetBody("test");  
/** SetAttach 设置附加数据,在查询API和支付通知中原样返回 */
$input->SetAttach("test");
/** SetOut_trade_no 设置商户系统内部的订单号,32个字符内、可包含字母 */
$input->SetOut_trade_no(WxPayConfig::MCHID.date("YmdHis"));
/** SetTotal_fee 设置订单总金额,单位为分,只能为整数 */
$input->SetTotal_fee("1");
/** SetTime_start 设置订单生成时间,格式为yyyyMMddHHmmss */
$input->SetTime_start(date("YmdHis"));
/** SetTime_expire 设置订单失效时间,格式为yyyyMMddHHmmss */
$input->SetTime_expire(date("YmdHis", time() + 600));
/** SetGoods_tag 设置商品标记,代金券或立减优惠功能的参数 */
$input->SetGoods_tag("test");
/** SetNotify_url 设置接收微信支付异步通知回调地址 */
$input->SetNotify_url("http://paysdk.weixin.qq.com/example/notify.php");
/** SetTrade_type 设置支付方式,设置取值如下:JSAPI,NATIVE,APP,分别是网页、扫码、APP,刷卡不在这 */
$input->SetTrade_type("JSAPI");
/** SetOpenid 设置我们获取的用户OpenId */
$input->SetOpenid($openId);
/** 进行支付 */
$order = WxPayApi::unifiedOrder($input);

2,调起支付的效果

一旦调起了支付请求,此时用户将会进入到微信的支付页面,这个页面会显示出付款信息,含有时间、款数、付钱给谁、还有商品名字,与此同时在商家的商户平台也会有对应的订单生成