参数要求 app_id 公众号appid mch_id 商家id apiclient_cert,apiclient_key文件 secrect_key 商户 $openid //收款方openid
function curl_post_ssl($url, $vars, $second = 30, $aHeader = array(),$ssl=array()) { if(empty($ssl)){ $ssl['CURLOPT_SSLCERT']=apiclient_cert.pem"; $ssl['CURLOPT_SSLKEY']=apiclient_key.pem"; } $ch = curl_init();//初始化curl curl_setopt($ch, CURLOPT_TIMEOUT, $second);//设置执行最长秒数 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//要求结果为字符串且输出到屏幕上 curl_setopt($ch, CURLOPT_URL, $url);//抓取指定网页 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);// 终止从服务端进行验证 curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false);// curl_setopt($ch,CURLOPT_SSLCERTTYPE,'PEM'); curl_setopt($ch,CURLOPT_SSLCERT,$ssl['CURLOPT_SSLCERT']); //注意证书路径 //默认格式为PEM,可以注释 curl_setopt($ch,CURLOPT_SSLKEYTYPE,'PEM'); curl_setopt($ch,CURLOPT_SSLKEY,$ssl['CURLOPT_SSLKEY']); //注意证书路径 curl_setopt($ch, CURLOPT_CAINFO, 'PEM'); curl_setopt($ch, CURLOPT_CAINFO, 'rootca.pem'); if (count($aHeader) >= 1) { curl_setopt($ch, CURLOPT_HTTPHEADER, $aHeader);//设置头部 } curl_setopt($ch, CURLOPT_POST, 1);//post提交方式 curl_setopt($ch, CURLOPT_POSTFIELDS, $vars);//全部数据使用HTTP协议中的"POST"操作来发送 $data = curl_exec($ch);//执行回话 if ($data) { curl_close($ch); return $data; } else { $error = curl_errno($ch); echo "call faild, errorCode:$error\n"; curl_close($ch); return false; } }