| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455 |
- <?php
- namespace app\business;
- use support\Db;
- use support\Redis;
- use yzh52521\EasyHttp\Http;
- class PayTwoBusiness
- {
- static private $url="http://pay.qtpal.click/api/pay/create_order";
- static private $apikey='N4IYERM0FHJPXRJ6U82HHE2BLSQRJFG488KWD2Z1AEWNPDRFVICRW91XHLW41QOZPU0I4ECJLSQQTZ7ORUD80RRLU6V4W2WTOSYY6N7QYIG3A0KOAU7BN2AHH2Y2HK8E';
- static private $memberid=10569;
- /**
- * @param array $param[
- * order_no
- * ]
- * @return array
- */
- static public function payment($order_no,$pay_bankcode,$money,$url = '')
- {
- if(empty($url)){
- $url=getenv('WEB_HOST');
- }
- $arr=[
- 'mchId' => (int)self::$memberid,//商户号
- 'productId' => (int)$pay_bankcode,//通道类型
- 'mchOrderNo' => (string)$order_no,//商户订单号
- 'amount' => (int)bcmul($money,100),//金额,单位为分
- 'notifyUrl' => (string)getenv('API_HOST').'/api/pay/payment_callback_two.html',//异步通知地址,支付成功后将支付成功消息以POST请求发送给这个网址
- 'returnUrl' => (string)$url
- ];
- $arr['sign']=self::payMd5sign($arr);
- $data=Http::post(self::$url,$arr)->array();
- return ['data'=>$data,'arr'=>$arr];
- }
- static public function payMd5sign(array $param)
- {
- ksort($param); //ASCII码排序
- $md5str = [];
- foreach ($param as $key => $val) {
- $md5str[] = $key . "=" . $val ;
- }
- $sign = strtoupper(md5(implode('&',$md5str) . "&key=" .self::$apikey));
- //转换成字符串并且拼接上密钥
- return $sign;
- }
- }
|