微信企业付款

微信企业付款最低金额1元
public function sq() {
		$str = "http://d.qm1888.com/index.php/shop/Test/sq_1";
		$str_url = urlencode ( $str );
		$appid = "********************";
		$url = 'https://open.weixin.qq.com/connect/oauth2/authorize?appid=' . $appid . '&redirect_uri=' . $str_url . '&response_type=code&scope=snsapi_base&state=STATE#wechat_redirect';
		// 替换这个STATE
		header ( "Location:" . $url );
	}
	public function sq_1() {
		vendor ( 'Wxpay.Wxpayhongbao.api_test' );
		// $state = str_replace("\\", "", $state); //去掉\\要不解析不了
		// 企业支付
		$appid = "********************";
		$secret = "********************";
		$code = $_GET ["code"];
		// var_dump ( $code );
		$get_token_url = 'https://api.weixin.qq.com/sns/oauth2/access_token?appid=' . $appid . '&secret=' . $secret . '&code=' . $code . '&grant_type=authorization_code';
		// echo "<br/>" . $get_token_url . "<br/>";
		$curl = curl_init ();
		curl_setopt ( $curl, CURLOPT_RETURNTRANSFER, true );
		curl_setopt ( $curl, CURLOPT_TIMEOUT, 500 );
		curl_setopt ( $curl, CURLOPT_SSL_VERIFYPEER, false );
		curl_setopt ( $curl, CURLOPT_SSL_VERIFYHOST, false );
		curl_setopt ( $curl, CURLOPT_URL, $get_token_url );
		
		$res = curl_exec ( $curl );
		curl_close ( $curl );
		
		// var_dump ( $res );
		$json_obj = json_decode ( $res, true );
		// 获取openid
		$access_token = $json_obj ['access_token'];
		$openids = $json_obj ['openid'];
		// echo "<br/>" . "-----" . $openids . "*****";
		$mch_appid = $appid;
		$mchid = '*************'; // 商户号
		$nonce_str = 'qyzf' . rand ( 100000, 999999 ); // 随机数
		// $partner_trade_no = 'HW' . time () . rand ( 10000, 99999 ); //商户订单号
		$partner_trade_no = 'HW' . rand ( 100000, 999999 ); // 商户订单号
		$openid = $openids; // 用户唯一标识
		$check_name = 'NO_CHECK'; // 校验用户姓名选项,NO_CHECK:不校验真实姓名 FORCE_CHECK:强校验真实姓名(未实名认证的用户会校验失败,无法转账)OPTION_CHECK:针对已实名认证的用户才校验真实姓名(未实名认证用户不校验,可以转账成功)
		$re_user_name = 'qmhhr'; // 用户姓名
		$amount = 1 * 100; // 金额(以分为单位,必须大于100)
		$desc = '提现金额'; // 描述
		$spbill_create_ip = $_SERVER ["REMOTE_ADDR"]; // 请求ip
		// 封装成数据
		$dataArr = array ();
		$dataArr ['amount'] = $amount;
		$dataArr ['check_name'] = $check_name;
		$dataArr ['desc'] = $desc;
		$dataArr ['mch_appid'] = $mch_appid;
		$dataArr ['mchid'] = $mchid;
		$dataArr ['nonce_str'] = $nonce_str;
		$dataArr ['openid'] = $openid;
		$dataArr ['partner_trade_no'] = $partner_trade_no;
		$dataArr ['re_user_name'] = $re_user_name;
		$dataArr ['spbill_create_ip'] = $spbill_create_ip;
		
		$sign = getSign ( $dataArr );
		
		// echo "-----<br/>签名:" . $sign . "<br/>*****"; //die;
		$data = "<xml>
             <mch_appid>" . $mch_appid . "</mch_appid>
             <mchid>" . $mchid . "</mchid>
             <nonce_str>" . $nonce_str . "</nonce_str>
             <partner_trade_no>" . $partner_trade_no . "</partner_trade_no>
             <openid>" . $openid . "</openid>
             <check_name>" . $check_name . "</check_name>
             <re_user_name>" . $re_user_name . "</re_user_name>
             <amount>" . $amount . "</amount>
             <desc>" . $desc . "</desc>
             <spbill_create_ip>" . $spbill_create_ip . "</spbill_create_ip>
             <sign>" . $sign . "</sign>
             </xml>";
		// var_dump ( $data );
		

		$ch = curl_init ();
		$MENU_URL = "https://api.mch.weixin.qq.com/mmpaymkttransfers/promotion/transfers";
		curl_setopt ( $ch, CURLOPT_URL, $MENU_URL );
		curl_setopt ( $ch, CURLOPT_CUSTOMREQUEST, "POST" );
		curl_setopt ( $ch, CURLOPT_SSL_VERIFYPEER, true );
		curl_setopt ( $ch, CURLOPT_SSL_VERIFYHOST, 2 );
		
		// $zs1 = getcwd () . "/apiclient_cert.pem";
		// $zs2 = getcwd () . "/apiclient_key.pem";
		// $zs3 = getcwd () . "/rootca.pem";
		$zs1 = "/www/web/default/ThinkPHP/Library/Vendor/Wxpay/Wxpayhongbao/cacert/apiclient_cert.pem";
		$zs2 = "/www/web/default/ThinkPHP/Library/Vendor/Wxpay/Wxpayhongbao/cacert/apiclient_key.pem";
		$zs3 = "/www/web/default/ThinkPHP/Library/Vendor/Wxpay/Wxpayhongbao/cacert/rootca.pem";
		curl_setopt ( $ch, CURLOPT_SSLCERT, $zs1 );
		curl_setopt ( $ch, CURLOPT_SSLKEY, $zs2 );
		curl_setopt ( $ch, CURLOPT_CAINFO, $zs3 );
		// curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01;
		// Windows NT 5.0)');
		curl_setopt ( $ch, CURLOPT_FOLLOWLOCATION, 1 );
		curl_setopt ( $ch, CURLOPT_AUTOREFERER, 1 );
		curl_setopt ( $ch, CURLOPT_POSTFIELDS, $data );
		curl_setopt ( $ch, CURLOPT_RETURNTRANSFER, true );
		$info = curl_exec ( $ch );
		
		if (curl_errno ( $ch )) {
			echo 'Errno' . curl_error ( $ch );
		}
		curl_close ( $ch );
		$msg = array ();
		$postStr = $GLOBALS ["HTTP_RAW_POST_DATA"];
		$msg = ( array ) simplexml_load_string ( $info, 'SimpleXMLElement', LIBXML_NOCDATA );
		if ($msg ['return_code'] == 'SUCCESS' && $msg ['result_code'] == 'SUCCESS') {
			echo 'SUCCESS';
		} else {
			echo 'ERROR';
		}
	}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值