Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
纵之格
ShopXO
提交
dd4085f1
ShopXO
项目概览
纵之格
/
ShopXO
通知
394
Star
16
Fork
11
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
1
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
ShopXO
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
1
Issue
1
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
dd4085f1
编写于
5月 29, 2019
作者:
D
devil_gong
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
wx pay debug
上级
b04d3845
变更
1
隐藏空白更改
内联
并排
Showing
1 changed file
with
53 addition
and
1 deletion
+53
-1
extend/payment/Weixin.php
extend/payment/Weixin.php
+53
-1
未找到文件。
extend/payment/Weixin.php
浏览文件 @
dd4085f1
...
...
@@ -611,6 +611,58 @@ class Weixin
}
}
/**
* 以post方式提交xml到对应的接口url
*
* @param WxPayConfigInterface $config 配置对象
* @param string $xml 需要post的xml数据
* @param string $url url
* @param bool $useCert 是否需要证书,默认不需要
* @param int $second url执行超时时间,默认30s
* @throws WxPayException
*/
private
static
function
HttpRequest
(
$url
,
$xml
,
$useCert
=
false
,
$second
=
30
)
{
$ch
=
curl_init
();
$curlVersion
=
curl_version
();
//设置超时
curl_setopt
(
$ch
,
CURLOPT_TIMEOUT
,
$second
);
curl_setopt
(
$ch
,
CURLOPT_URL
,
$url
);
curl_setopt
(
$ch
,
CURLOPT_SSL_VERIFYPEER
,
TRUE
);
curl_setopt
(
$ch
,
CURLOPT_SSL_VERIFYHOST
,
2
);
//严格校验
//设置header
curl_setopt
(
$ch
,
CURLOPT_HEADER
,
FALSE
);
//要求结果为字符串且输出到屏幕上
curl_setopt
(
$ch
,
CURLOPT_RETURNTRANSFER
,
TRUE
);
if
(
$useCert
==
true
){
//设置证书
//使用证书:cert 与 key 分别属于两个.pem文件
//证书文件请放入服务器的非web目录下
curl_setopt
(
$ch
,
CURLOPT_SSLCERTTYPE
,
'PEM'
);
curl_setopt
(
$ch
,
CURLOPT_SSLCERT
,
ROOT
.
'weixin-cert/apiclient_cert.pem'
);
curl_setopt
(
$ch
,
CURLOPT_SSLKEYTYPE
,
'PEM'
);
curl_setopt
(
$ch
,
CURLOPT_SSLKEY
,
ROOT
.
'weixin-cert/apiclient_key.pem'
);
}
//post提交方式
curl_setopt
(
$ch
,
CURLOPT_POST
,
TRUE
);
curl_setopt
(
$ch
,
CURLOPT_POSTFIELDS
,
$xml
);
//运行curl
$data
=
curl_exec
(
$ch
);
//返回结果
if
(
$data
){
curl_close
(
$ch
);
return
$data
;
}
else
{
$error
=
curl_errno
(
$ch
);
curl_close
(
$ch
);
var_dump
(
$error
);
return
$error
;
}
}
/**
* [HttpRequest 网络请求]
* @author Devil
...
...
@@ -623,7 +675,7 @@ class Weixin
* @param [int] $second [超时]
* @return [mixed] [请求返回数据]
*/
private
function
HttpRequest
(
$url
,
$data
,
$use_cert
=
false
,
$second
=
30
)
private
function
HttpRequest
ss
(
$url
,
$data
,
$use_cert
=
false
,
$second
=
30
)
{
$options
=
array
(
CURLOPT_RETURNTRANSFER
=>
true
,
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录