zoukankan      html  css  js  c++  java
  • 微信生成带参数二维码,跳转公众号

        protected $appid = '';
        protected $secret = '';
        protected $access_tokens;
    
        private function access_token_lst(){
            //获取$access_token
            $url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=" . $this->appid . "&secret=" . $this->secret;
            $result = $this->curl_post($url);
            $access_tokens = json_decode($result, true);
            $this->access_tokens = $access_tokens['access_token'];
        }
       
        public function qr_code()
        {
            //获取access_token
            $this->access_token_lst();
    
            //非必传项
            $rs = $this->getTemporaryQrcode($this->access_tokens, 12345678912345678912345678912345);
         
            $ticket = $rs['ticket'];
            $qrcode = "https://mp.weixin.qq.com/cgi-bin/showqrcode?ticket=" . $ticket . "";
            echo "<img src=". $qrcode .">";
        }
    
        //生成二维码
        private function getTemporaryQrcode($access_tokens, $orderId)
        {
            $url = "https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token=" . $access_tokens . "";
            //生成二维码需要的参数
            $qrcode = '{"expire_seconds": 1800, "action_name": "QR_SCENE", "action_info": {"scene": {"scene_id": ' . $orderId . '}}}';
            $momo = json_decode($qrcode, true);
            $result = $this->curl_post($url, $momo);
            $rs = json_decode($result, true);
            return $rs;
        }
    
        private function curl_post($url, array $params = array()){
            $data_string = json_encode($params);
            $ch = curl_init();
            curl_setopt($ch, CURLOPT_URL, $url);
            curl_setopt($ch, CURLOPT_HEADER, 0);
            curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
            curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
            curl_setopt($ch, CURLOPT_POST, 1);
            curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
            curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string);
            curl_setopt($ch, CURLOPT_HTTPHEADER,
        
                array(
        
                    'Content-Type: application/json'
        
                )
        
            );
            $data = curl_exec($ch);
            curl_close($ch);
            return ($data);
        }

    原文:https://www.cnblogs.com/jiaoda/p/10769129.html

  • 相关阅读:
    HAOI2015 树上染色
    HAOI2010 软件安装
    T2 Func<in T1,out T2>(T1 arg)
    事无巨细
    LitJson JavaScriptSerializer
    数据库操作
    jQuery:总体掌握
    sql一个题的解法分析讲解
    Javascript系列:总体理解
    c#
  • 原文地址:https://www.cnblogs.com/junyi-bk/p/13667463.html
Copyright © 2011-2022 走看看