Files
wnmj/GonghuiWeb/class/AlipayService.php
2026-02-24 09:25:17 +08:00

90 lines
2.8 KiB
PHP
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?php
/* *
* 类名AlipayService
* 功能:支付宝各接口构造类
* 详细:构造支付宝各接口请求参数
* 版本3.2
* 日期2011-03-25
* 说明:
* 以下代码只是为了方便商户测试而提供的样例代码,商户可以根据自己网站的需要,按照技术文档编写,并非一定要使用该代码。
* 该代码仅供学习和研究支付宝接口使用,只是提供一个参考。
*/
class AlipayService {
var $aliapy_config;
/**
*支付宝网关地址(新)
*/
var $alipay_gateway_new = 'https://mapi.alipay.com/gateway.do?';
function __construct($aliapy_config){
$this->aliapy_config = $aliapy_config;
}
function AlipayService($aliapy_config) {
$this->__construct($aliapy_config);
}
/**
* 构造担保交易接口
* @param $para_temp 请求参数数组
* @return 表单提交HTML信息
*/
function create_partner_trade_by_buyer($para_temp) {
//设置按钮名称
$button_name = "确认";
//生成表单提交HTML文本信息
$alipaySubmit = new AlipaySubmit();
$html_text = $alipaySubmit->buildForm($para_temp, $this->alipay_gateway_new, "get", $button_name, $this->aliapy_config);
return $html_text;
}
/**
* 构造确认发货接口
* @param $para_temp 请求参数数组
* @return 获取支付宝的返回XML处理结果
*/
function send_goods_confirm_by_platform($para_temp) {
//获取支付宝的返回XML处理结果
$alipaySubmit = new AlipaySubmit();
$html_text = $alipaySubmit->sendPostInfo($para_temp, $this->alipay_gateway_new, $this->aliapy_config);
return $html_text;
}
/**
* 用于防钓鱼调用接口query_timestamp来获取时间戳的处理函数
* 注意该功能PHP5环境及以上支持因此必须服务器、本地电脑中装有支持DOMDocument、SSL的PHP配置环境。建议本地调试时使用PHP开发软件
* return 时间戳字符串
*/
function query_timestamp() {
$url = $this->alipay_gateway_new."service=query_timestamp&partner=".trim($this->aliapy_config['partner']);
$encrypt_key = "";
$doc = new DOMDocument();
$doc->load($url);
$itemEncrypt_key = $doc->getElementsByTagName( "encrypt_key" );
$encrypt_key = $itemEncrypt_key->item(0)->nodeValue;
return $encrypt_key;
}
/**
* 构造支付宝其他接口
* @param $para_temp 请求参数数组
* @return 表单提交HTML信息/支付宝返回XML处理结果
*/
function alipay_interface($para_temp) {
//获取远程数据/生成表单提交HTML文本信息
$alipaySubmit = new AlipaySubmit();
$html_text = "";
//请根据不同的接口特性,选择一种请求方式
//1.构造表单提交HTML数据:$method可赋值为get或post
//$alipaySubmit->buildForm($para_temp, $this->alipay_gateway_new, "get", $button_name, $this->aliapy_config);
//2.构造模拟远程HTTP的POST请求获取支付宝的返回XML处理结果:
//注意若要使用远程HTTP获取数据必须开通SSL服务该服务请找到php.ini配置文件设置开启建议与您的网络管理员联系解决。
//$alipaySubmit->sendPostInfo($para_temp, $this->alipay_gateway_new, $this->aliapy_config);
return $html_text;
}
}
?>