/**
* $header string 二维码地址
* 生成二维码
* @return mixed
*/
function getQrcode($url)
{
$urls = './qrcode/' . date('Ymd') . '/';
if (!file_exists($urls)) {
mkdir($urls, 0777, true);
}
$QRcode = new \phpqrcode\QRcode(); //实例类
$data = $url;
$urls = $urls . $url . '.png';
$level = 'L'; // 纠错级别:L、M、Q、H
$size = 2; // 点的大小:1到10,用于手机端4就可以了
$QRcode->png($data, $urls, $level, $size, 1);
$imgUrl = substr($urls, 1);
return $imgUrl;
}
/**
* $type 1 为门户 2 为o
* $cp_id 公司编号,确认公司的小程序,无这默认系统小程序
* $page 小程序路径
* $scene 二维码参数
* $filename string 二维码名称
*
* 生成小程序的二维码
* @return mixed
*/
function getWxCode($page,$scene,$filename,$type=1,$cp_id=0,$width=280){
//二维码
$url ="https://api.weixin.qq.com/wxa/getwxacodeunlimit?access_token=".get_access_token($type,$cp_id);
$data['scene'] = $scene;
$data['page'] = $page;
$data['width'] = $width;
$rs = dcurl($url,json_encode($data));
$test = json_decode($rs,true);
$date = date("Ymd");
$path = "./qrcode/".$date."/";
if(!file_exists($path)){
mkdir($path,0755,true);
}
$qrcode =$path.$filename;
if(!is_array($test)){
$resource = fopen($qrcode, 'a');
fwrite($resource, $rs);
fclose($resource);
}
if(is_file($qrcode)){
return "/qrcode/".$date."/".$filename;
}else{
return "";
}
}
/**
* $header string 二维码地址
* 生成base64格式的二维码
* @return mixed
*/
function getBase64Qrcode($url)
{
$data = $url;
$level = 'L'; // 纠错级别:L、M、Q、H
$size = 10; // 点的大小:1到10,用于手机端4就可以了
$QRcode = new \phpqrcode\QRcode(); //实例类
ob_start();
$QRcode->png($data, false, $level, $size, 1);
$imageString = base64_encode(ob_get_contents());
ob_end_clean();
return 'data:image/jpg;base64,' . $imageString;
}
PHP生成二维码
于 2023-05-16 13:39:17 首次发布