官方文檔
下載支付寶sdk後解壓放到extend目錄下
在public/index.php中定義常量
define('ALI_PATH',__DIR__.'/../extend/alipay/aop/');
創建控制器並寫入代碼
require ALI_PATH . 'AopClient.php';
require ALI_PATH . 'request/AlipayOpenAppQrcodeCreateRequest.php';
class Good extends Apiclass{
public function getqrcode($uid)
{
$aop = new \AopClient ();
$aop->gatewayUrl = 'https://openapi.alipay.com/gateway.do';
$aop->appId = self::$appid;
$aop->rsaPrivateKey = self::$prikey;
$aop->alipayrsaPublicKey = self::$alipubkey;
$aop->apiVersion = '1.0';
$aop->signType = 'RSA2';
$aop->postCharset = 'UTF-8';
$aop->format = 'json';
$request = new \AlipayOpenAppQrcodeCreateRequest ();
$request->setBizContent("{" .
"\"url_param\":\"/pages/index/index\"," . //跳轉的小程序頁面路徑
"\"query_param\":\"id=".$uid."\"," . //頁面需要的參數
"\"describe\":\"支付寶掃一掃\"" . " }"
);
$result = $aop->execute ( $request);
$responseNode = str_replace(".", "_", $request->getApiMethodName()) . "_response";
$resultCode = $result->{$responseNode}->code;
if(!empty($resultCode)&&$resultCode == 10000)
{
$user = AliUsers::find($uid);
$user->qrcode = $result->{$responseNode}->qr_code_url; //生成二維碼的圖片路徑
$user->save();
}
}
}