今年thinkphp推出了5.0版本,相比以往版本更轻更便捷了。由于业务需要使用支付宝支付,兔子工程整合了支付宝支付接口,在此分享给各位奋战在一线的攻城狮们,希望对你们有帮助。
本文所带附件是一个完整的实例文件,给各位提供参考,如有逻辑有考虑不周的地方,还望指出。
首先创建一个模型(Pay.php)用来提交订单到支付宝和接收支付宝异步通知(案例中放弃了同步通知,本人觉得同步通知完全没必要)
<?php
namespace app\index\model;
use think\Validate;
use think\Log;
class Pay extends \think\Model
{
public static $alipay_config = [
'partner' => '2088************',//支付宝partner,2088开头数字
'seller_id' => '2088************',//支付宝partner,2088开头数字
'key' => '****************',//支付宝密钥
'sign_type' => 'MD5',
'input_charset' => 'utf-8',
'cacert' => '',
'transport' => 'http',
'payment_type' => '1',
'service' => 'create_direct_pay_by_user',
'anti_phishing_key' => '',
'exter_invoke_ip' => '',
];
public function alipay($data=[])
{//发起支付宝支付
$validate = new Validate([
['out_trade_no','require|alphaNum','订单编号输入错误|订单编号输入错误'],
['total_fee','require|number|gt:0','金额输入错误|金额输入错误|金额输入错误'],
['subject','require','请输入标题'],
['body','require','请输入描述'],
['notify_url','require',&#