本文整理汇总了PHP中UnifiedOrder_pub::SetParameter方法的典型用法代码示例。如果您正苦于以下问题:PHP UnifiedOrder_pub::SetParameter方法的具体用法?PHP UnifiedOrder_pub::SetParameter怎么用?PHP UnifiedOrder_pub::SetParameter使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类UnifiedOrder_pub
的用法示例。
在下文中一共展示了UnifiedOrder_pub::SetParameter方法的2个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: createQrcode
public function createQrcode()
{
$pkey = base64_decode(I("pkey"));
$pkeys = explode("@", $pkey);
if (count($pkeys) != 2) {
$this->assign('out_trade_no', "");
} else {
$morders = D('Home/Orders');
$obj["orderIds"] = $pkeys[1];
$data = $morders->getPayOrders($obj);
$orders = $data["orders"];
$needPay = $data["needPay"];
$this->assign("orderIds", $orderIds);
$this->assign("orders", $orders);
$this->assign("needPay", $needPay);
$this->assign("orderCnt", count($orders));
// 使用统一支付接口
$unifiedOrder = new \UnifiedOrder_pub();
$unifiedOrder->setParameter("body", "支付订单費用");
// 商品描述
// 自定义订单号,此处仅作举例
$timeStamp = time();
$out_trade_no = "{$timeStamp}";
// $out_trade_no = "1000001|1000002";
$unifiedOrder->setParameter("out_trade_no", "{$out_trade_no}");
// 商户订单号
$unifiedOrder->setParameter("total_fee", $needPay * 100);
// 总金额
$unifiedOrder->setParameter("notify_url", C('WxPayConf_pub.NOTIFY_URL'));
// 通知地址
$unifiedOrder->setParameter("trade_type", "NATIVE");
// 交易类型
$unifiedOrder->setParameter("attach", "{$pkey}");
// 附加数据
// $unifiedOrder->setParameter ( "detail", "Ipad mini" );//附加数据
$unifiedOrder->SetParameter("input_charset", "UTF-8");
// 获取统一支付接口结果
$unifiedOrderResult = $unifiedOrder->getResult();
// 商户根据实际情况设置相应的处理流程
if ($unifiedOrderResult["return_code"] == "FAIL") {
// 商户自行增加处理流程
echo "通信出错:" . $unifiedOrderResult['return_msg'] . "<br>";
} elseif ($unifiedOrderResult["result_code"] == "FAIL") {
// 商户自行增加处理流程
echo "错误代码:" . $unifiedOrderResult['err_code'] . "<br>";
echo "错误代码描述:" . $unifiedOrderResult['err_code_des'] . "<br>";
} elseif ($unifiedOrderResult["code_url"] != NULL) {
// 从统一支付接口获取到code_url
$code_url = $unifiedOrderResult["code_url"];
// 商户自行增加处理流程
}
$this->assign('out_trade_no', $obj["orderIds"]);
$this->assign('code_url', $code_url);
$this->assign('unifiedOrderResult', $unifiedOrderResult);
}
$this->display("default/payment/wxnative2/qrcode");
}
示例2: index
public function index()
{
$this->isUserLogin();
vendor('Weixinpay.WxPayPubHelper');
//使用jsapi接口
$jsApi = new \JsApi_pub();
//=========步骤1:网页授权获取用户openid============
//通过code获得openid
$code = $_GET['code'];
$jsApi->setCode($code);
$openid = session('WST_USER')['wxId'];
$pkey = session('WST_USER')["userId"] . "@" . $_SESSION["orderIds"];
$time = time();
$res = array('order_sn' => $time, 'order_amount' => $_SESSION['needPay']);
//=========步骤2:使用统一支付接口,获取prepay_id============
//使用统一支付接口
$unifiedOrder = new \UnifiedOrder_pub();
$total_fee = $res['order_amount'] * 100;
//$total_fee = 1;
$body = "订单支付{$res['order_sn']}";
$unifiedOrder->setParameter("openid", "{$openid}");
//用户标识
$unifiedOrder->setParameter("body", $body);
//商品描述
//自定义订单号,此处仅作举例
$out_trade_no = $res['order_sn'];
$unifiedOrder->setParameter("out_trade_no", "{$out_trade_no}");
//商户订单号
$unifiedOrder->setParameter("total_fee", $total_fee);
//总金额
$unifiedOrder->setParameter("attach", "{$pkey}");
//附加数据
$unifiedOrder->setParameter("notify_url", C('WxPayConf_pub.NOTIFY_URL'));
//通知地址
$unifiedOrder->setParameter("trade_type", "JSAPI");
//交易类型
$unifiedOrder->SetParameter("input_charset", "UTF-8");
//非必填参数,商户可根据实际情况选填
$prepay_id = $unifiedOrder->getPrepayId();
//=========步骤3:使用jsapi调起支付============
$jsApi->setPrepayId($prepay_id);
$jsApiParameters = $jsApi->getParameters();
$wxconf = json_decode($jsApiParameters, true);
if ($wxconf['package'] == 'prepay_id=') {
$this->error('当前订单存在异常,不能使用支付');
}
$this->assign('res', $res);
$this->assign('jsApiParameters', $jsApiParameters);
$this->display('default/payment/wxjsapi/wxpay');
}