二维码生成后,可以在浏览器中另存为本地图片,但如果有很多二维码,则用程序下载比较方便。
下面使用CURL获取图片的所有信息,并将图片数据保存为一个文件。一个完整的下载代码如下。
1 $ticket = "gQHi8DoAAAAAAAAAASxodHRwOi8vd2VpeGluLnFxLmNvbS9xL0UweTNxNi1sdlA3Rkly
RnNKbUFvAAIELdnUUgMEAAAAAA==";
2
3 $url = "https:// mp.weixin.qq.com/cgi-bin/showqrcode?ticket=".urlencode($ticket);
4 $imageInfo = downloadWeixinFile($url);
5
6 $filename = "qrcode.jpg";
7 $local_file = fopen($filename, 'w');
8 if (false !== $local_file){
9 if (false !== fwrite($local_file, $imageInfo["body"])) {
10 fclose($local_file);
11 }
12 }
13
14 function downloadWeixinFile($url)
15 {
16 $ch = curl_init($url);
17 curl_setopt($ch, CURLOPT_HEADER, 0);
18 curl_setopt($ch, CURLOPT_NOBODY, 0); // 只取body头
19 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);
20 curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, FALSE);
21 curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
22 $package = curl_exec($ch);
23 $httpinfo = curl_getinfo($ch);
24 curl_close($ch);
25 returnarray_merge(array('body' =>$package), array('header' =>$httpinfo));
26 }
这样在程序当前目录就会生成一个包含二维码的图片文件。