<?php require '../conf.php'; require '../vendor/autoload.php'; use lib\WxPayApi; use lib\base\WxPayDownloadBill; //数据输入对象类 //use lib\base\WxPayConfig;//微信支付参数配置类 if (isset($_REQUEST["bill_date"]) && $_REQUEST["bill_date"] != "") { $bill_date = $_REQUEST["bill_date"]; $bill_type = $_REQUEST["bill_type"]; $input = new WxPayDownloadBill(); $input->SetBill_date($bill_date); $input->SetBill_type($bill_type); $file = WxPayApi::downloadBill($input); echo $file; //TODO 对账单文件处理 exit(0); } ?> <html> <head> <meta http-equiv="content-type" content="text/html;charset=utf-8"/> <meta name="viewport" content="width=device-width, initial-scale=1" /> <title>微信支付样例-查退款单</title> </head> <body> <form action="#" method="post"> <div style="margin-left:2%;">对账日期:</div><br/> <input type="text" style="width:96%;height:35px;margin-left:2%;" name="bill_date" /><br /><br /> <div style="margin-left:2%;">账单类型:</div><br/>
/** * 下载对账单,WxPayDownloadBill中bill_date为必填参数 * appid、mchid、spbill_create_ip、nonce_str不需要填入 * @param base\WxPayDownloadBill $inputObj * @param int $timeOut * @throws WxPayException * @return 成功时返回,其他抛异常 */ public static function downloadBill($inputObj, $timeOut = 6) { $url = "https://api.mch.weixin.qq.com/pay/downloadbill"; //检测必填参数 if (!$inputObj->IsBill_dateSet()) { throw new WxPayException("对账单接口中,缺少必填参数bill_date!"); } $inputObj->SetAppid(WxPayConfig::APPID); //公众账号ID $inputObj->SetMch_id(WxPayConfig::MCHID); //商户号 $inputObj->SetNonce_str(self::getNonceStr()); //随机字符串 $inputObj->SetSign(); //签名 $xml = $inputObj->ToXml(); $response = self::postXmlCurl($xml, $url, false, $timeOut); if (substr($response, 0, 5) == "<xml>") { return ""; } return $response; }