php微信開發之批量產生帶參數的二維碼,php批量參數_PHP教程

來源:互聯網
上載者:User

php開發之批量產生帶參數的二維碼,php批量參數


帶參數的二維碼對於渠道營銷推廣來說是很有用的,可以獲得多個帶不同情境值的二維碼,使用者掃描後,公眾號可以接收到事件推送,可喜的是開通了這個介面,那下面就來研究一下吧。
具體介面說明請參見,公眾平台開發人員文檔(http://mp.weixin.qq.com/wiki/18/28fc21e7ed87bec960651f0ce873ef8a.html) ,我這裡就直接上代碼。
示範圖:

由於帶參數二維碼產生是有限的,所有我是按編號產生的,下次產生的時候直接累加。
另外帶設定有備忘,方便以後統計。

public function createewm(){     if(IS_POST){       $access_token=checkAccessToken($this->token); //擷取access_token       $json_url='https://api.weixin.qq.com/cgi-bin/qrcode/create?access_token='.$access_token;               $action_name=$this->_post('action_name');  //組建類型(臨時、永久)       $create_num=$this->_post('create_num');   //產生數量        //資料庫裡查詢最後產生一個編號       $now_secne_id=M('erweima')->where(array('token'=>$this->token))->order('scene_id desc')->getField('scene_id');        //新產生在最後一個編輯上加1       $start_secne_id=intval($now_secne_id)+1;       $end_secne_id=intval($now_secne_id)+intval($create_num);       $n=0;       for($i=$start_secne_id;$i<=$end_secne_id;$i++){         $curl_data='';         if($action_name=='QR_SCENE'){           //臨時 post的json資料           $curl_data='{"expire_seconds": 1800, "action_name": "QR_SCENE", "action_info": {"scene": {"scene_id": '.$i.'}}}';        }                  if($action_name=='QR_LIMIT_SCENE'){          //永久 post的json資料           $curl_data='{"action_name": "QR_LIMIT_SCENE", "action_info": {"scene": {"scene_id": '.$i.'}}}';         }          $json_info=json_decode($this->api_notice_increment($json_url,$curl_data),true);           //這裡代表產生成功,記錄資料以便插入到資料庫,方便以後統計尋找         if($json_info['errcode']!=40013){            $data[$n]['token']=$this->token;           $data[$n]['tiket']=$json_info['ticket'];           $data[$n]['url']=$json_info['url'];           $data[$n]['scene_id']=$i;           $data[$n]['expire_seconds']=$json_info['expire_seconds'];           $data[$n]['action_name']=$action_name;           $data[$n]['remark']='';           $data[$n]['createtime']=time();           $n++;         }else{           $this->error('操作失敗');         }       }      if(count($data)>0){         $res= M('erweima')->addAll($data);//插入資料         if($res){          $this->success('添加成功');         }else{          $this->error('操作失敗');         }       }else{         $this->error('操作失敗');       }      }   }
function api_notice_increment($url, $data){    $ch = curl_init();    $header = "Accept-Charset: utf-8";    curl_setopt($ch, CURLOPT_URL, $url);    curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);    curl_setopt($curl, CURLOPT_HTTPHEADER, $header);    curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/5.0 (compatible; MSIE 5.01; Windows NT 5.0)');    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);    curl_setopt($ch, CURLOPT_AUTOREFERER, 1);    curl_setopt($ch, CURLOPT_POSTFIELDS, $data);    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);    $tmpInfo = curl_exec($ch);    if (curl_errno($ch)) {      //curl_close( $ch )      return $ch;    }else{      //curl_close( $ch )       return $tmpInfo;    }    curl_close( $ch ) ;  } 

很簡單,基本夠用了,喜歡就拿走

以上就是本文的全部內容,希望對大家的學習有所協助,也希望大家多多支援幫客之家。

http://www.bkjia.com/PHPjc/1138976.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/1138976.htmlTechArticlephp開發之批量產生帶參數的二維碼,php批量參數 帶參數的二維碼對於渠道營銷推廣來說是很有用的,可以獲得多個帶不同情境值的二維...

  • 相關文章

    聯繫我們

    該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

    如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

    A Free Trial That Lets You Build Big!

    Start building with 50+ products and up to 12 months usage for Elastic Compute Service

    • Sales Support

      1 on 1 presale consultation

    • After-Sales Support

      24/7 Technical Support 6 Free Tickets per Quarter Faster Response

    • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.