public function actionReturnurl() { $this->alipay_config = (new AlipayConfig())->getAliConfig(); $alipayNotify = new AlipayNotify($this->alipay_config); $verify_result = $alipayNotify->verifyReturn(); //验证成功 if ($verify_result) { //商户订单号 $out_trade_no = $_GET['out_trade_no']; //支付宝交易号 $trade_no = $_GET['trade_no']; //交易状态 $trade_status = $_GET['trade_status']; if ($_GET['trade_status'] == 'TRADE_FINISHED' || $_GET['trade_status'] == 'TRADE_SUCCESS') { //判断该笔订单是否在商户网站中已经做过处理 $orderModel = new Order(); $isOk = $orderModel->updateOrderByOrderNoAndStatus($out_trade_no, 1); //支付成功,更新订单状态 if (!$isOk) { $erorr = '订单已经支付成功,但订单状态更新失败 原因不明 订单号:' . $out_trade_no . ',发生时间:' . date('Y-m-d H:i:s', time()); Yii::getLogger()->log($erorr, Logger::LEVEL_ERROR); } return $this->render(FVariable::$paySuccess_view, ['out_trade_no' => $out_trade_no]); } else { echo "trade_status=" . $_GET['trade_status']; $erorr = '订单已经支付成功,但支付宝返回状态不对 联系支付宝客服查明 单号:' . $out_trade_no . ',发生时间:' . date('Y-m-d H:i:s', time()); Yii::getLogger()->log($erorr, Logger::LEVEL_ERROR); return $this->render(FVariable::$payFail_view); } } return $this->render(FVariable::$payFail_view); }