微信小程序 PHP生成带参数二维码


Posted in Javascript onFebruary 21, 2017

微信小程序 PHP生成带参数二维码

官方获取小程序页面API

微信小程序 PHP生成带参数二维码

由于小程序参数二维码API提供的帮助有限,以下是我对该功能的一些理解

我主要是通过thinkphp后台接口实现,代码如下:

1、先获取ACCESS_TOKEN:

$tokenUrl="https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=".$this->appid."&secret=".$this->secret;
    $getArr=array();
    $tokenArr=json_decode($this->send_post($tokenUrl,$getArr,"GET"));
    $access_token=$tokenArr->access_token;

send_post:

function send_post($url, $post_data,$method='POST') {
    $postdata = http_build_query($post_data);
    $options = array(
      'http' => array(
        'method' => $method, //or GET
        'header' => 'Content-type:application/x-www-form-urlencoded',
        'content' => $postdata,
        'timeout' => 15 * 60 // 超时时间(单位:s)
      )
    );
    $context = stream_context_create($options);
    $result = file_get_contents($url, false, $context);
    return $result;
  }

2、生成二维码:

$path="pages/index?query=1";
    $width=430;
    $post_data='{"path":"'.$path.'","width":'.$width.'}';
    $url="https://api.weixin.qq.com/cgi-bin/wxaapp/createwxaqrcode?access_token=".$access_token;
    $result=$this->api_notice_increment($url,$post_data);

api_notice_increment:

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);
    //     var_dump($tmpInfo);
    //    exit;
    if (curl_errno($ch)) {
      return false;
    }else{
      // var_dump($tmpInfo);
      return $tmpInfo;
    }
  }

3、根据返回的二进制数据生成图片并上传到自己的服务器

主要代码:

file_put_contents($filepath, $result)

上传服务部分代码,不贴了!感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

Javascript 相关文章推荐
讨论javascript(一)工厂方式 js面象对象的定义方法
Dec 15 Javascript
jquery map方法使用示例
Apr 23 Javascript
javascript浏览器兼容教程之事件处理
Jun 09 Javascript
js 截取或者替换字符串中的数字实现方法
Jun 13 Javascript
angular ngClick阻止冒泡使用默认行为的方法
Nov 03 Javascript
Javascript之面向对象--方法
Dec 02 Javascript
微信页面倒计时代码(解决safari不兼容date的问题)
Dec 13 Javascript
AngularJS基于factory创建自定义服务的方法详解
May 25 Javascript
ztree简介_动力节点Java学院整理
Jul 19 Javascript
Angular2 http jsonp的实例详解
Aug 31 Javascript
vue vuex vue-rouert后台项目——权限路由(适合初学)
Dec 29 Javascript
Angularjs实现数组随机排序的方法
Oct 02 Javascript
vue-resource 拦截器使用详解
Feb 21 #Javascript
微信小程序 template模板详解及实例
Feb 21 #Javascript
Bootstrap 3 按钮标签实例代码
Feb 21 #Javascript
Angular实现购物车计算示例代码
Feb 21 #Javascript
原生js实现倒计时--2018
Feb 21 #Javascript
vue-router:嵌套路由的使用方法
Feb 21 #Javascript
JavaScript中创建对象的7种模式详解
Feb 21 #Javascript
You might like
缅甸的咖啡简史
2021/03/04 咖啡文化
php+MySQL判断update语句是否执行成功的方法
2014/08/28 PHP
用 Composer构建自己的 PHP 框架之基础准备
2014/10/30 PHP
php多次include后导致全局变量global失效的解决方法
2015/02/28 PHP
PHP中file_exists使用中遇到的问题小结
2016/04/05 PHP
微信随机生成红包金额算法php版
2016/07/21 PHP
tp5框架的增删改查操作示例
2019/10/31 PHP
JQuery设置和去除disabled属性的5种方法总结
2013/05/16 Javascript
jQuery对象初始化的传参方式
2015/02/26 Javascript
Ajax中解析Json的两种方法对比分析
2015/06/25 Javascript
bootstarp modal框居中显示的实现代码
2017/02/18 Javascript
js实现九宫格的随机颜色跳转
2017/02/19 Javascript
基于cookie实现zTree树刷新后展开状态不变
2017/02/28 Javascript
JavaScript限定范围拖拽及自定义滚动条应用(3)
2017/05/17 Javascript
探索webpack模块及webpack3新特性
2017/09/18 Javascript
vue双向数据绑定知识点总结
2018/04/18 Javascript
AJAX在JQuery中的应用详解
2019/01/30 jQuery
JavaScript中arguments的使用方法详解
2020/12/20 Javascript
[01:18:35]DOTA2-DPC中国联赛 正赛 Elephant vs LBZS BO3 第一场 1月29日
2021/03/11 DOTA
Python中的魔法方法深入理解
2014/07/09 Python
Python中turtle作图示例
2017/11/15 Python
Python及Django框架生成二维码的方法分析
2018/01/31 Python
python监控键盘输入实例代码
2018/02/09 Python
python标准库os库的函数介绍
2020/02/12 Python
使用 django orm 写 exists 条件过滤实例
2020/05/20 Python
CSS3实现千变万化的文字阴影text-shadow效果设计
2016/04/26 HTML / CSS
印度服装购物网站:Limeroad
2018/09/26 全球购物
super()与this()的区别
2016/01/17 面试题
大学生简历中个人的自我评价
2013/10/06 职场文书
2014植树节活动总结
2014/03/11 职场文书
舞蹈专业大学生职业规划范文
2014/03/12 职场文书
个人公司授权委托书范本
2014/10/12 职场文书
不同意离婚上诉状
2015/05/23 职场文书
国庆放假通知怎么写
2015/07/30 职场文书
员工担保书范本
2015/09/22 职场文书
自荐信范文
2019/05/20 职场文书