统一下单代码:
<?php $openId = input('openid'); $fee = input('fee/d') * 100; $body = input('body'); loader::import('wxpay/lib/WxPayApi', EXTEND_PATH); loader::import('wxpay/example/WxPayConfig', EXTEND_PATH); $timestr = time(); $input = new \WxPayUnifiedOrder(); $input->SetBody($body); $input->SetAttach(""); $input->SetOut_trade_no("sdkphp" . date("YmdHis")); $input->SetTotal_fee($fee); $input->SetTime_start(date("YmdHis", $timestr)); $input->SetTime_expire(date("YmdHis", $timestr + 600)); $input->SetGoods_tag(""); $input->SetNotify_url(YM . "/api/index/wxpaysuccess.shtml"); $input->SetTrade_type("JSAPI"); $input->SetOpenid($openId); $config = new \WxPayConfig(); $wxpay = new \WxPayApi(); $order = $wxpay::unifiedOrder($config, $input); $order['timestamp'] = $timestr; $order['package'] = "prepay_id=" . $order['prepay_id']; // 生成小程序签名 $order['paySign'] = MD5('appId=' . $order["appid"] . '&nonceStr=' . $order["nonce_str"] . '&package=' . $order["package"] . '&signType=MD5&timeStamp=' . $order["timestamp"] . '&key=zhongguosheyingyishuwang99999999'); return $this->responed(true, $order); ?>
统一下单返回的签名和小程序支付时的签名是不一样的,这里注意哦!
小程序支付,支付之前在后台统一下单生成后: