'5.1.0', //版本号 'encoding' => 'utf-8', //编码方式 'signMethod' => '01', //签名方法 'txnType' => '00', //交易类型 'txnSubType' => '00', //交易子类 'bizType' => '000000', //业务类型 'accessType' => '0', //接入类型 'channelType' => '07', //渠道类型 'orderId' => date('YmdHis'), //订单号,演示用 'merId' => '777290058110048', //商户代码,演示用 'txnTime' => date('YmdHis'), //订单发送时间,演示用 ); $cert_path = 'D:\certs\testMultiCert.pfx'; $cert_pwd = '123456'; com\unionpay\acp\sdk\AcpService::signByCertInfo( $params, $cert_path, $cert_pwd ); // 签名 //此地址为示例这里要替换成做具体交易的地址(具体交易地址请查看对应示例中用到的地址) $url = com\unionpay\acp\sdk\SDKConfig::getSDKConfig()->singleQueryUrl; $result_arr = com\unionpay\acp\sdk\AcpService::post ( $params, $url); if(count($result_arr)<=0) { //没收到200应答的情况 printResult ( $url, $params, array() ); echo "POST请求失败,具体报错请看下日志。
\n" ; return; } printResult ($url, $params, $result_arr ); //页面打印请求应答数据 $cert_path = 'D:\certs\testMultiCert2.pfx'; $cert_pwd = '000000'; com\unionpay\acp\sdk\AcpService::signByCertInfo ( $params, $cert_path, $cert_pwd ); // 签名 $result_arr = com\unionpay\acp\sdk\AcpService::post ( $params, $url); if(count($result_arr)<=0) { //没收到200应答的情况 printResult ( $url, $params, array() ); echo "POST请求失败,具体报错请看下日志。
\n" ; return; } printResult ($url, $params, $result_arr ); //页面打印请求应答数据 /** * 打印请求应答 * * @param * $url * @param * $req * @param * $resp */ function printResult($url, $req, $resp) { echo "=============
\n"; echo "地址:" . $url . "
\n"; echo "请求:" . str_replace ( "\n", "\n
", htmlentities ( com\unionpay\acp\sdk\createLinkString ( $req, false, true ) ) ) . "
\n"; echo "应答:" . str_replace ( "\n", "\n
", htmlentities ( com\unionpay\acp\sdk\createLinkString ( $resp , false, false )) ) . "
\n"; echo "=============
\n"; } function getProjName(){ $dir = str_replace("\\","/", dirname(__FILE__)); $rootDir = str_replace("\\", "/", $_SERVER ['DOCUMENT_ROOT']); if($rootDir[strlen($rootDir) - 1] != "/") $rootDir = $rootDir . "/"; $index = strlen($rootDir); $dir = substr($dir, $index); $index = strpos($dir, "/"); $projName = substr($dir, 0, $index); return $projName; }