亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

PHP實現生成二維碼的代碼怎么寫

發布時間:2022-05-30 11:13:47 來源:億速云 閱讀:258 作者:iii 欄目:開發技術

本文小編為大家詳細介紹“PHP實現生成二維碼的代碼怎么寫”,內容詳細,步驟清晰,細節處理妥當,希望這篇“PHP實現生成二維碼的代碼怎么寫”文章能幫助大家解決疑惑,下面跟著小編的思路慢慢深入,一起來學習新知識吧。

前言

為了滿足用戶渠道推廣分析和用戶賬號綁定等場景的需要,公眾平臺提供了生成帶參數二維碼的接口。使用該接口可以獲得多個帶不同場景值的二維碼,用戶掃描后,公眾號可以接收到事件推送。

1、目前有2種類型的二維碼

  • 臨時二維碼,是有過期時間的,最長可以設置為在二維碼生成后的30天(即2592000秒)后過期,但能夠生成較多數量。臨時二維碼主要用于賬號綁定等不要求二維碼永久保存的業務場景 

  • 永久二維碼,是無過期時間的,但數量較少(目前為最多10萬個)。永久二維碼主要用于適用于賬號綁定、用戶來源統計等場景

2、用戶掃描帶場景值二維碼時,可能推送以下兩種事件

  • 如果用戶還未關注公眾號,則用戶可以關注公眾號,關注后微信會將帶場景值關注事件推送給開發者。

  • 如果用戶已經關注公眾號,在用戶掃描后會自動進入會話,微信也會將帶場景值掃描事件推送給開發者。

獲取帶參數的二維碼的過程包括兩步,首先創建二維碼ticket,然后憑借ticket到指定URL換取二維碼。

3、創建二維碼ticket

每次創建二維碼ticket需要提供一個開發者自行設定的參數(scene_id),分別介紹臨時二維碼和永久二維碼的創建二維碼ticket過程。

4、臨時二維碼請求說明

http請求方式: POST

URL: https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token=TOKEN

POST數據格式:json

POST數據例子:{"expire_seconds": 604800, "action_name": "QR_SCENE", "action_info": {"scene": {"scene_id": 123}}}

或者也可以使用以下POST數據創建字符串形式的二維碼參數:

{"expire_seconds": 604800, "action_name": "QR_STR_SCENE", "action_info": {"scene": {"scene_str": "test"}}}

5、永久二維碼請求說明

http請求方式: POST

URL: https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token=TOKEN

POST數據格式:json

POST數據例子:{"action_name": "QR_LIMIT_SCENE", "action_info": {"scene": {"scene_id": 123}}}

 或者也可以使用以下POST數據創建字符串形式的二維碼參數:

{"action_name": "QR_LIMIT_STR_SCENE", "action_info": {"scene": {"scene_str": "test"}}}

6、臨時二維碼和永久二維碼生成實現的代碼

       //臨時二維碼
    public function getQrls()
{
        $accessToken = $this->_getWxAccessToken();
        $url = "https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token={$accessToken}";
        $postArr =  [
            "action_name" => "QR_SCENE",
            "expire_seconds" => 604800,
            "action_info" => [
                'scene' => ['scene_id' => 2000],
              ],
           ];
 
        $postJson = json_encode($postArr);
        $res = $this->ch($url, 'post', 'json', $postJson);
 
        $ticket = $res['ticket'];
        $url = "https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=".urlencode($ticket);
 
        echo "<img src='".$url."'>";
 
    }
 
    //永久二維碼
    public function getQryj()
{
        $accessToken = $this->_getWxAccessToken();
        $url = "https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token={$accessToken}";
        $postArr =  [
            "action_name" => "QR_LIMIT_SCENE",
            "action_info" => [
                'scene' => ['scene_id' => 3000],
              ],
           ];
 
        $postJson = json_encode($postArr);
        $res = $this->ch($url, 'post', 'json', $postJson);
 
        $ticket = $res['ticket'];
        $url = "https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=".urlencode($ticket);
 
        echo "<img src='".$url."'>";
    }
     
    //url請求
    private function ch($url, $type='get', $res='json', $arr='')
{
 
        $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
        curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
 
        if ($type == 'post') {
            curl_setopt($ch, CURLOPT_POST, 1);
            curl_setopt($ch, CURLOPT_POSTFIELDS, $arr);
        }
 
        $cnt = curl_exec($ch);
        if (curl_errno($ch)) {
            return;
        }
 
        curl_close($ch);
 
        if ($res == 'json') {
            return json_decode($cnt, true);
        }
 
        return $cnt;
    }

讀到這里,這篇“PHP實現生成二維碼的代碼怎么寫”文章已經介紹完畢,想要掌握這篇文章的知識點還需要大家自己動手實踐使用過才能領會,如果想了解更多相關內容的文章,歡迎關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

php
AI

文安县| 阿拉善左旗| 元江| 阜康市| 斗六市| 水城县| 青阳县| 青铜峡市| 盐津县| 金华市| 南岸区| 吴忠市| 东阿县| 和田市| 文化| 晋中市| 霍山县| 青河县| 甘孜| 和田县| 府谷县| 金川县| 定日县| 乐至县| 乐陵市| 朝阳市| 墨竹工卡县| 百色市| 阿拉善右旗| 临夏县| 获嘉县| 南开区| 商水县| 民乐县| 海安县| 芦山县| 广灵县| 鄄城县| 日土县| 兰州市| 宝兴县|