本文整理匯總了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');
}