<?php
//微信小程序获取access_token
function get_access_token($appid,$secret)
{
$url = "https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid={$appid}&secret={$secret}";
return $data = curl_get($url);
}
//获得二维码
function get_qrcode($access_token,$scene,$page,$path)
{
//header('content-type:image/png');格式自选,不同格式貌似加载速度略有不同,想加载更快可选择jpg
header('content-type:image/jpg');
$data = [
'scene' => $scene,
'page' => $page
];
$data = json_encode($data);
$access = json_decode($access_token,true);
$access_token= $access['access_token'];
$url = "https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=" . $access_token;
$result = curl_post($url,$data);
file_put_contents($path, $result);
}
//模拟GET
function curl_get($url)
{
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$data = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
return $data;
}
//模拟POST
function curl_post($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)) {
return false;
}else{
return $tmpInfo;
}
}
$appid = '';
$secret = '';
$token = get_access_token($appid,$secret);
$scene = 'id=1&type=1'; //要传的参数
$page = ''; //跳转的路径(不填默认首页)
$path = './get_wxminiqrcode.jpg'; //二维码保存的路径
get_qrcode($token,$scene,$page,$path);