public function createNoncestr($length =32)
{
$chars = "abcdefghijklmnopqrstuvwxyz0123456789";
$str ="";
for ( i < i++ ) {
chars, mt_rand(0, strlen($chars)-1), 1);
}
return $str;
}
public function unicode() {
$str = uniqid(mt_rand(),1);
str);
return md5($str);
}
public function arraytoxml($data){
$str=' ';
foreach(k=>$v) {
k.'>'.k.'>';
}
$str.='';
return $str;
}
public function xmltoarray($xml) {
//禁止引用外部xml实体
libxml_disable_entity_loader(true);
xml, 'SimpleXMLElement', LIBXML_NOCDATA);
xmlstring),true);
return $val;
}
public function curl(url) {
url;
param;
$ch = curl_init(); //初始化curl
curl_setopt(postUrl); //抓取指定网页
curl_setopt($ch, CURLOPT_HEADER, 0); //设置header
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); //要求结果为字符串且输出到屏幕上
curl_setopt($ch, CURLOPT_POST, 1); //post提交方式
curl_setopt(curlPost); // 增加 HTTP Header(头)里的字段
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); // 终止从服务端进行验证
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
curl_setopt($ch,CURLOPT_SSLCERT,'/apiclient_cert.pem'); //这个是证书的位置绝对路径
curl_setopt($ch,CURLOPT_SSLKEY,'/apiclient_key.pem'); //这个也是证书的位置绝对路径
ch); //运行curl
curl_close($ch);
return $data;
}
/*
$amount 发送的金额(分)目前发送金额不能少于1元
$re_openid, 发送人的 openid
$desc // 企业付款描述信息 (必填)
$check_name 收款用户姓名 (选填)
*/
public function sendMoney(check_name='',$arr){
$data['mch_appid'] = 'wx09c0b2d9e0ca80ce';
this->wxMerchantId;
this->createNoncestr();
arr['out_trade_no'];
$data['check_name']='NO_CHECK';
arr['amount'];
arr['real_name'];
arr['account_number'];
_SERVER["REMOTE_ADDR"];
$data['desc'] ='返现金额';
this->wxApiV2Key;///这个就是个API密码。MD5 32位。
data);
ksort($data);
$str='';
foreach(k=>$v) {
k.'='.$v.'&';
}
secrect_key;
str);
this->arraytoxml($data);
$url='api.mch.weixin.qq.com/mmpaymkttra… //调用接口
this->curl(url);
this->xmltoarray($res);
dump($return);die;
print_r($return);
//返回来的结果
// [return_code] => SUCCESS [return_msg] => Array ( ) [mch_appid] => wxd44b890e61f72c63 [mchid] => 1493475512 [nonce_str] => 616615516 [result_code] => SUCCESS [partner_trade_no] => 20186505080216815
// [payment_no] => 1000018361251805057502564679 [payment_time] => 2018-05-15 15:29:50
res, 'SimpleXMLElement', LIBXML_NOCDATA);
echo responseObj->return_code; //SUCCESS 如果返回来SUCCESS,则发生成功,处理自己的逻辑
return $res
}