php生成二维码
Posted layfork
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了php生成二维码相关的知识,希望对你有一定的参考价值。
//https://sourceforge.net/projects/phpqrcode/files/ 下载地址 include ‘phpqrcode/phpqrcode.php‘; class MyQrcode{ /* * 普通生成二维码 * @param string $url * @param int $size * @param string $output_path * @param string $filename * @return array */ public function createNormal($url=‘‘,$size=4,$output_path=‘‘,$filename=‘‘) { if(empty($url)) { return array(‘result‘=>"fail",‘msg‘=>"url参数为空"); } if(empty($path)) { $output_path=‘./‘; } if(empty($filename)) { $filename=md5(time()).‘.png‘; } //容错级别 $errorCorrenctionLevel = ‘l‘; Qrcode::png($url,$output_path.$filename,$errorCorrenctionLevel,$size,2); return array(‘result‘=>‘success‘,‘msg‘=>"生成成功",‘imgurl‘=>$output_path.$filename); } public function createHasCenterImage($url=‘‘,$centerImg=‘‘,$size=4,$output_path=‘‘,$output_filename=‘‘,$tempfile=‘temp.png‘) { if(empty($url)) { return array(‘result‘=>"fail",‘msg‘=>"url参数为空"); } if(empty($path)) { $output_path=‘./‘; } if(empty($output_filename)) { $output_filename=md5(time()).‘.png‘; } if(empty($centerImg)) { return array(‘result‘=>"fail",‘msg‘=>"中心图片参数为空"); } if(!file_exists($centerImg)) { return array(‘result‘=>"fail",‘msg‘=>"中心图片不存在"); } //容错级别 $errorCorrenctionLevel = ‘l‘; Qrcode::png($url,$tempfile,$errorCorrenctionLevel,$size,2); if(!file_exists($tempfile)) { return array(‘result‘=>"fail",‘msg‘=>"生成临时二维码失败"); } $logo = $centerImg; $qrcode = $tempfile; $logo = imagecreatefromstring(file_get_contents($logo)); $qrcode = imagecreatefromstring(file_get_contents($qrcode)); $QR_width = imagesx($qrcode);//二维码图片宽度 $QR_height = imagesy($qrcode);//二维码图片高度 $logo_width = imagesx($logo);//logo图片宽度 $logo_height = imagesy($logo);//logo图片高度 $logo_qr_width = $QR_width / 5; $scale = $logo_width/$logo_qr_width; $logo_qr_height = $logo_height/$scale; $from_width = ($QR_width - $logo_qr_width) / 2; //重新组合图片并调整大小 imagecopyresampled($qrcode, $logo, $from_width, $from_width, 0, 0, $logo_qr_width,$logo_qr_height, $logo_width, $logo_height); //保存生成的二维码 $r= imagepng($qrcode,$output_path.$output_filename); //删除临时的二维码图片 @unlink($tempfile); if($r==true) { return array(‘result‘=>"success",‘msg‘=>"生成二维码成功",‘imgurl‘=>$output_path.$output_filename); } else { return array(‘result‘=>"fail",‘msg‘=>"生成二维码失败"); } } } $obj=new MyQrcode(); $obj->createNormal(‘http://www.baidu.com‘,4,‘./‘.‘tt.png‘);
以上是关于php生成二维码的主要内容,如果未能解决你的问题,请参考以下文章