//这部分获取订单信息
$order_no="2019122100395044813";
$order=$this->getOrderInfo($order_no);
//計算出訂單總金額
$amount=intval($order['order_price'])+intval($order["deliver_price"]);
//这部分开始设置POST参数
$list=array();
$list['id']=1;
$list['amount']=$amount;
$list['products']=array();
$orderDetailTemp=$order['temp'];
for($i=0;$i<count($orderDetailTemp);$i++){
$item=array();
$item['id']=$orderDetailTemp[$i]['subclass_tips'].$orderDetailTemp[$i]['item_no'];
$item['name']="精選商品-".$orderDetailTemp[$i]['subclass_tips'].$orderDetailTemp[$i]['item_no'];
$item['quantity']=$orderDetailTemp[$i]['num'];
$item['price']=$orderDetailTemp[$i]['product_price'];
array_push($list['products'],$item);
}
unset($data);
$data['amount']=$amount;
$data['currency']="TWD";
$data['orderId']=$order['order_no']."-".rand(10,99);
//这里需要注意packages 也是二维数组
$data['packages'][]=$list;
//array_push($data['packages',$list);
$data['redirectUrls']=array(
"confirmUrl"=>"用户确认付款后,回传页面URL",
"cancelUrl"=>"用户取消付款后,回传页面URL"
);
$jsonData=json_encode($data);
$apiUrl="/v3/payments/request";
//生成UUID 唯一标识
$nonce= $this->uuid();
$channelSecret=$this->channel_secretKey;
$hash_hmac_string=$channelSecret.$apiUrl.$jsonData.$nonce;
//生成簽章
$signature=base64_encode(hash_hmac("sha256",utf8_encode($hash_hmac_string) , utf8_encode($channelSecret), true));
//设定header信息
$header=array(
"Content-Type:application/json",
"X-LINE-ChannelId:".$this->channel_id,
"X-LINE-Authorization-Nonce:".$nonce,
'X-LINE-Authorization:'.$signature
);
$url=$this->pathUrl.$apiUrl;
//初始化CURL
$curl = curl_init();
//设置抓取的url
curl_setopt($curl, CURLOPT_URL, $url);
//设置头文件的信息作为数据流输出
curl_setopt($curl, CURLOPT_HEADER,0);
//设置获取的信息以文件流的形式返回,而不是直接输出。
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 0);
curl_setopt($curl, CURLOPT_HTTPHEADER, $header);
//curl_setopt ($curl, CURLOPT_CUSTOMREQUEST, "put");
curl_setopt($curl, CURLOPT_POSTFIELDS, $jsonData);//设置提交的字符串
//执行命令
$data = curl_exec($curl);
//关闭URL请求
curl_close($curl);
//生成唯一標識
public function uuid()
{
$chars = md5(uniqid(mt_rand(), true));
$uuid = substr ( $chars, 0, 8 ) . '-'
. substr ( $chars, 8, 4 ) . '-'
. substr ( $chars, 12, 4 ) . '-'
. substr ( $chars, 16, 4 ) . '-'
. substr ( $chars, 20, 12 );
return $uuid ;
}
PHP语言下面介接LINE_PAY
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...