<address id="ousso"></address>
<form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
  1. php語言

    整合支付寶即時交易+掃碼支付

    時間:2025-03-08 16:04:19 php語言 我要投稿
    • 相關推薦

    整合支付寶即時交易+掃碼支付

      Thinkphp5技術小技巧,下面是由百分網小編為大家整理的整合支付寶即時交易+掃碼支付,喜歡的可以收藏一下!了解更多詳情資訊,請關注應屆畢業生考試網!
      
      第一步:在配置文件config.php添加配置文件
      
      'ALIPAY_CONFIG'          => [
      
      'partner'            => '' // partner 從支付寶商戶版個人中心獲取
      
      'seller_email'       => '' // email 從支付寶商戶版個人中心獲取
      
      'key'                => '' // key 從支付寶商戶版個人中心獲取
      
      'sign_type'          => strtoupper(trim('MD5')) // 可選md5  和 RSA
      
      'input_charset'      => 'utf-8' // 編碼 (固定值不用改)
      
      'transport'          => 'http' // 協議  (固定值不用改)
      
      'cacert'             => EXTEND_PATH.'Alipay/cacert.pem'  // cacert.pem存放的位置 (固定值不用改)
      
      'notify_url'         => '' // 異步接收支付狀態通知的鏈接
      
      'return_url'         => '' // 頁面跳轉 同步通知 頁面路徑 支付寶處理完請求后當前頁面自 動跳轉到商戶網站里指定頁面的 http 路徑。 (掃碼支付專用)
      
      'private_key_path'   => '' //移動端生成的私有key文件存放于服務器的 絕對路徑 如果為MD5加密方式;此項可為空 (移動支付專用)
      
      'public_key_path'    => '' //移動端生成的公共key文件存放于服務器的 絕對路徑 如果為MD5加密方式;此項可為空 (移動支付專用)
      
      ]
      
      第二步:在公共文件common.php添加公共函數
      
      function alipay($order){
      
      import('Alipay.AlipaySubmit' EXTEND_PATH '.class.php');
      
      // 獲取配置
      
      $config=config('ALIPAY_CONFIG');
      
      $data=array(
      
      "_input_charset" => $config['input_charset'] // 編碼格式
      
      "logistics_fee" => "0.00" // 物流費用
      
      "logistics_payment" => "SELLER_PAY" // 物流支付方式SELLER_PAY(賣家承擔運費)、BUYER_PAY(買家承擔運費)
      
      "logistics_type" => "EXPRESS" // 物流類型EXPRESS(快遞)、POST(平郵)、EMS(EMS)
      
      "notify_url" => $config['notify_url'] // 異步接收支付狀態通知的鏈接
      
      "out_trade_no" => $order['out_trade_no'] // 訂單號
      
      "partner" => $config['partner'] // partner 從支付寶商戶版個人中心獲取
      
      "payment_type" => "1" // 支付類型對應請求時的 payment_type 參數原樣返回。固定設置為1即可
      
      "price" => $order['price'] // 訂單價格單位為元
      
      "quantity" => "1" // price、quantity 能代替 total_fee。 即存在 total_fee就不能存在 price 和 quantity;存在 price、quantity 就不能存在 total_fee。 (沒繞明白;好吧;那無視這個參數即可)
      
      "receive_address" => '1' // 收貨人地址 即時到賬方式無視此參數即可
      
      "receive_mobile" => '1' // 收貨人手機號碼 即時到賬方式無視即可
      
      "receive_name" => '1' // 收貨人姓名 即時到賬方式無視即可
      
      "receive_zip" => '1' // 收貨人郵編 即時到賬方式無視即可
      
      "return_url" => $config['return_url'] // 頁面跳轉 同步通知 頁面路徑 支付寶處理完請求后當前頁面自 動跳轉到商戶網站里指定頁面的 http 路徑。
      
      "seller_email" => $config['seller_email'] // email 從支付寶商戶版個人中心獲取
      
      "service" => "create_direct_pay_by_user" // 接口名稱 固定設置為create_direct_pay_by_user
      
      "show_url" => $order['show_url'] // 商品展示網址收銀臺頁面上商品展示的超鏈接。
      
      "subject" => $order['subject'] // 商品名稱商品的標題/交易標題/訂單標 題/訂單關鍵字等
      
      );
      
      $alipay=new \AlipaySubmit($config);
      
      $new=$alipay->buildRequestPara($data);
      
      $go_pay=$alipay->buildRequestForm($new 'get''支付');
      
      echo $go_pay;
      
      }
      
      第三步:在控制器創建如Alipay.php文件
      
      public function alipay_return()
      
      {
      
      // 引入支付寶
      
      import('Alipay.AlipayNotify' EXTEND_PATH '.class.php');
      
      $config = $config = config('ALIPAY_CONFIG');
      
      $notify = new \AlipayNotify($config);
      
      // 驗證支付數據
      
      $status = $notify->verifyReturn();
      
      if($status){
      
      // 下面寫驗證通過的邏輯 比如說更改訂單狀態等等 $_GET['out_trade_no'] 為訂單號;
      
      $this->success('支付成功');
      
      }else{
      
      $this->success('支付失敗');
      
      }
      
      }
      
      public function alipay_notify()
      
      {
      
      // 引入支付寶
      
      import('Alipay.AlipayNotify' EXTEND_PATH '.class.php');
      
      $config = $config = config('ALIPAY_CONFIG');
      
      $alipayNotify = new \AlipayNotify($config);
      
      // 驗證支付數據
      
      $verify_result = $alipayNotify->verifyNotify();
      
      if($verify_result) {
      
      echo "success";
      
      // 下面寫驗證通過的邏輯 比如說更改訂單狀態等等 $_POST['out_trade_no'] 為訂單號;
      
      }else {
      
      echo "success";
      
      }
      
      }
      
      public function alipay()
      
      {
      
      $data=array(
      
      'out_trade_no'=>time()
      
      'price'=>1
      
      'subject'=>'測試'
      
      );
      
      alipay($data);
      
      }
      
      最后導入sdk文件(群文件下載)/extend/Alipay

    【整合支付寶即時交易+掃碼支付】相關文章:

    php支付寶接口用法分析10-23

    ThinkPHP實現支付寶接口功能實例09-04

    支付寶錢包開通高考成績查詢功能09-04

    滬杭甬高速國慶節上線支付寶繳費功能08-23

    《掃一室與掃天下》教學設計范文09-05

    PHP校驗ISBN碼的函數07-29

    無線鼠標對碼模式設置08-13

    從零碼起調用javascript10-23

    期貨交易與現貨交易、遠期交易的關系09-21

    <address id="ousso"></address>
    <form id="ousso"><track id="ousso"><big id="ousso"></big></track></form>
    1. 日日做夜狠狠爱欧美黑人