function CurlPost($url, $param = null, $timeout = 10)

{

//初始化curl

$curl = curl_init();

curl_setopt($curl, CURLOPT_URL, $url); // 设置请求的路径

curl_setopt($curl, CURLOPT_POST, 1); //设置POST提交

curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); //显示输出结果

curl_setopt($curl, CURLOPT_TIMEOUT, $timeout);

//提交数据

if (is_array($param)) {

curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($param));

} else {

curl_setopt($curl, CURLOPT_POSTFIELDS, $param);

}

//执行请求

$data = $data_str = curl_exec($curl);

//处理错误

if ($error = curl_error($curl)) {

$log_data = array(

'url' => $url,

'param' => $param,

'error' => '' . $error . '',

);

}

# 关闭CURL

curl_close($curl);

//json数据转换为数组

$data = json_decode($data, true);

//api返回数据解密

$api_des = config('api.mcrypt');

if ($api_des['is_open']) {

$data1 = Des::decode($data, $api_des['key'], $api_des['iv']);

$des_str = json_decode($data1, true);

}

if (!is_array($des_str)) {

$des_str = $data_str;

}

return $des_str;

}

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐