本文介绍了Laravel使用支付宝进行支付的示例代码,分享给大家,也给自己留个笔记
// **请求参数拼接 start*****
$parameter = array(
"service" => "create_direct_pay_by_user","partner" => $alipay_config['partner'],// 合作身份者id
"seller_email" => $alipay_config['seller_email'],// 收款支付宝账号
"payment_type" => '1',// 支付类型
"notify_url" => "http://bw.com133.com/notify_url.PHP",// 服务器异步通知页面路径
"return_url" => "支付后跳转路径",// 页面跳转同步通知页面路径
"out_trade_no" => "订单号",// 商户网站订单系统中唯一订单号
"subject" => "",// 订单名称
"total_fee" => "0.01",// 付款金额
"body" => "",// 订单描述 可选
"show_url" => "",// 商品展示地址 可选
"anti_phishing_key" => "",// 防钓鱼时间戳 若要使用请调用类文件submit中的query_timestamp函数
"exter_invoke_ip" => "",// 客户端的IP地址
"_input_charset" => 'utf-8',// 字符编码格式
);
// 去除值为空的参数
foreach ($parameter as $k => $v) {
if (empty($v)) {
unset($parameter[$k]);
}
}
// 参数排序
ksort($parameter);
reset($parameter);
$parameter = array(
"service" => "create_direct_pay_by_user","partner" => $alipay_config['partner'],// 合作身份者id
"seller_email" => $alipay_config['seller_email'],// 收款支付宝账号
"payment_type" => '1',// 支付类型
"notify_url" => "http://bw.com133.com/notify_url.PHP",// 服务器异步通知页面路径
"return_url" => "支付后跳转路径",// 页面跳转同步通知页面路径
"out_trade_no" => "订单号",// 商户网站订单系统中唯一订单号
"subject" => "",// 订单名称
"total_fee" => "0.01",// 付款金额
"body" => "",// 订单描述 可选
"show_url" => "",// 商品展示地址 可选
"anti_phishing_key" => "",// 防钓鱼时间戳 若要使用请调用类文件submit中的query_timestamp函数
"exter_invoke_ip" => "",// 客户端的IP地址
"_input_charset" => 'utf-8',// 字符编码格式
);
// 去除值为空的参数
foreach ($parameter as $k => $v) {
if (empty($v)) {
unset($parameter[$k]);
}
}
// 参数排序
ksort($parameter);
reset($parameter);
// 拼接获得sign
$str = "";
foreach ($parameter as $k => $v) {
if (empty($str)) {
$str .= $k . "=" . $v;
} else {
$str .= "&" . $k . "=" . $v;
}
}
$parameter['sign'] = md5($str . $alipay_config['key']);
$parameter['sign_type'] = $alipay_config['sign_type'];
// **请求参数拼接 end*****
// **模拟请求 start*****
$sHtml = "