獲取微信小程式二維碼並且儲存

MeditationTm發表於2022-02-10

實現不同使用者生成小程式推廣二維碼

  1. 獲取 access_token
  2. 根據開放介面獲取所需二維碼
  3. 對獲取的二維碼進行處理

    獲取 access_token

    $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=$appid&secret=$secret";
    $result = httpGet($url);
    $data = json_decode($result, true);
    $access_token = $data['access_token'];

    根據介面獲取二維碼

    $params = ['path' => "/pages/index/index?PID=" . '2', 'width' => '280'];
    $data = json_encode($params);
    $url = "https://api.weixin.qq.com/cgi-bin/wxaapp/createwxaqrcode?access_token=" . $access_token;
    $response = httpPost($url, $data);// 儲存獲取到的二維碼

    對檔案進行 處理

    // 建立目錄---不存在建立目錄
    if (!is_dir('./public/qrcode')) {
    mkdir('./public/qrcode', 0777, true);
    }
    //  圖片檔案路徑
    $filePath = "/public/qrcode/" . 'uid-tg-' . $this->user_id . '.png';
    // 域名
    $domain = http() . $_SERVER['HTTP_HOST'];
    // 判斷有檔案直接返回
    if (file_exists('./public/qrcode/' . 'uid-tg-' . $this->user_id . '.png')) {
    $this->ajaxReturn(['code' => 200, 'message' => '推廣二維碼', 'data' => ['path' => $domain . $filePath]]);
    }
    # 不存在檔案的時候對檔案進行操作
    file_put_contents('./public/qrcode/' . 'uid-tg-' . $this->user_id . '.png', $response);
本作品採用《CC 協議》,轉載必須註明作者和本文連結

相關文章