微信小程序 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 相关文章推荐
Web层改进II-用xmlhttp 无声息提交复杂表单
Jan 22 Javascript
Javascript学习笔记之 函数篇(一) : 函数声明和函数表达式
Jun 24 Javascript
javascript 闭包详解
Feb 15 Javascript
总结JavaScript设计模式编程中的享元模式使用
May 21 Javascript
jQuery事件与动画基础详解
Feb 23 Javascript
原生js仿淘宝网商品放大镜效果
Feb 28 Javascript
Vue Element使用icon图标教程详解(第三方)
Feb 07 Javascript
vue2.0 实现页面导航提示引导的方法
Mar 13 Javascript
vue-cli项目中使用echarts图表实例
Oct 22 Javascript
vue.js中使用echarts实现数据动态刷新功能
Apr 16 Javascript
vue实现行列转换的一种方法
Aug 06 Javascript
在vue项目中 实现定义全局变量 全局函数操作
Oct 26 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
从零开始的异世界生活:第二季延期后,B站上架了第二部剧场版
2020/05/06 日漫
在PHP中PDO解决中文乱码问题的一些补充
2010/09/06 PHP
php通过exif_read_data函数获取图片的exif信息
2015/05/21 PHP
laravel框架创建授权策略实例分析
2019/11/22 PHP
jQuery 使用手册(三)
2009/09/23 Javascript
jquery select选中的一个小问题
2009/10/11 Javascript
33个优秀的jQuery 教程分享(幻灯片、动画菜单)
2011/07/08 Javascript
用javascript添加控件自定义属性解析
2013/11/25 Javascript
JavaScript调用ajax获取文本文件内容实现代码
2014/03/28 Javascript
Blocksit插件实现瀑布流数据无限( 异步)加载
2014/06/20 Javascript
js获取checkbox复选框选中的选项实例
2014/08/24 Javascript
JSON字符串转JSON对象
2015/07/31 Javascript
js select实现省市区联动选择
2020/04/17 Javascript
JS实现异步上传压缩图片
2017/04/22 Javascript
基于js中style.width与offsetWidth的区别(详解)
2017/11/12 Javascript
对layer弹出框中icon数字参数的说明介绍
2019/09/04 Javascript
python批量同步web服务器代码核心程序
2014/09/01 Python
用Python制作简单的朴素基数估计器的教程
2015/04/01 Python
Python中Proxypool库的安装与配置
2018/10/19 Python
Python使用sorted对字典的key或value排序
2018/11/15 Python
Python写一个基于MD5的文件监听程序
2019/03/11 Python
Linux下通过python获取本机ip方法示例
2019/09/06 Python
keras模型可视化,层可视化及kernel可视化实例
2020/01/24 Python
Python暴力破解Mysql数据的示例
2020/11/09 Python
python中scrapy处理项目数据的实例分析
2020/11/22 Python
详解matplotlib绘图样式(style)初探
2021/02/03 Python
美国最大网上鞋店:Zappos
2016/07/25 全球购物
碧欧泉美国官网:Biotherm美国
2016/08/31 全球购物
英国手工制作的现代与经典的沙发和床:Love Your Home
2020/09/26 全球购物
护士自荐信怎么写
2013/10/18 职场文书
技校个人求职信范文
2014/01/25 职场文书
店长职务说明书
2014/02/04 职场文书
2015年元旦演讲稿
2014/09/12 职场文书
终止劳动合同协议书
2014/10/05 职场文书
2015年元旦晚会活动总结(学生会)
2014/11/28 职场文书
vue-cropper插件实现图片截取上传组件封装
2021/05/27 Vue.js