统一下单代码:
<?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);
?>
统一下单返回的签名和小程序支付时的签名是不一样的,这里注意哦!
小程序支付,支付之前在后台统一下单生成后:
