微信小程序 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 相关文章推荐
jQuery EasyUI API 中文文档 - NumberSpinner数值微调器使用介绍
Oct 21 Javascript
jquery简单实现滚动条下拉DIV固定在头部不动
Nov 25 Javascript
js使用eval解析json(js中使用json)
Jan 17 Javascript
手机平板等移动端适配跳转URL的js代码
Jan 25 Javascript
JavaScript实现换肤功能
Sep 15 Javascript
Node.js 使用递归实现遍历文件夹中所有文件
Sep 18 Javascript
基于vue v-for 循环复选框-默认勾选第一个的实现方法
Mar 03 Javascript
webpack4.x打包过程详解
Jul 18 Javascript
vue项目部署到Apache服务器中遇到的问题解决
Aug 24 Javascript
vue做移动端适配最佳解决方案(亲测有效)
Sep 04 Javascript
JS实现的雪花飘落特效示例
Dec 03 Javascript
vue实现给div绑定keyup的enter事件
Jul 31 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
利用PHP制作简单的内容采集器的原理分析
2008/10/01 PHP
php对文件进行hash运算的方法
2015/04/03 PHP
PHP去除字符串最后一个字符的三种方法实例
2017/03/01 PHP
浅谈php调用python文件
2019/03/29 PHP
jQuery 处理表单元素的代码
2010/02/15 Javascript
js读写(删除)Cookie实例详解
2013/04/17 Javascript
jquery将一个表单序列化为一个对象的方法
2013/12/02 Javascript
jQuery实现提示密码强度的代码
2015/07/15 Javascript
使用JQuery实现Ctrl+Enter提交表单的方法
2015/10/22 Javascript
jQuery实现表格行和列的动态添加与删除方法【测试可用】
2016/08/01 Javascript
Jquery树插件zTree实现菜单树
2017/01/24 Javascript
js 函数式编程学习笔记
2017/03/25 Javascript
封装运动框架实战左右与上下滑动的焦点轮播图(实例)
2017/10/17 Javascript
完美解决axios跨域请求出错的问题
2018/02/05 Javascript
security.js实现的RSA加密功能示例
2018/06/06 Javascript
react项目如何使用iconfont的方法步骤
2019/03/13 Javascript
VUE注册全局组件和局部组件过程解析
2019/10/10 Javascript
React实现阿里云OSS上传文件的示例
2020/08/10 Javascript
JS实现简易日历效果
2021/01/25 Javascript
[02:32]DOTA2亚洲邀请赛 C9战队出场宣传片
2015/02/07 DOTA
Python实现扫描局域网活动ip(扫描在线电脑)
2015/04/28 Python
python实现简单遗传算法
2018/03/19 Python
python实现朴素贝叶斯分类器
2018/03/28 Python
Python修改DBF文件指定列
2020/12/19 Python
全网最细 Python 格式化输出用法讲解(推荐)
2021/01/18 Python
Python3利用openpyxl读写Excel文件的方法实例
2021/02/03 Python
纽约复古灵感的现代珠宝品牌:Lulu Frost
2018/03/03 全球购物
家庭贫困证明书(3篇)
2014/09/15 职场文书
大学生职业生涯十年规划书范文
2014/09/17 职场文书
2014年乡镇纪委工作总结
2014/12/19 职场文书
雾霾停课通知
2015/04/24 职场文书
台风停课通知
2015/04/24 职场文书
团组织推荐意见
2015/06/05 职场文书
JavaScript+HTML实现学生信息管理系统
2021/04/20 Javascript
python识别围棋定位棋盘位置
2021/07/26 Python
Mysql中有关Datetime和Timestamp的使用总结
2021/12/06 MySQL