PHP微信开发之如何实现二维码生成类
发表于:2025-01-31 作者:千家信息网编辑
千家信息网最后更新 2025年01月31日,小编给大家分享一下PHP微信开发之如何实现二维码生成类,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
千家信息网最后更新 2025年01月31日PHP微信开发之如何实现二维码生成类
小编给大家分享一下PHP微信开发之如何实现二维码生成类,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
where(array('id'=> $wechatid))->find(); $appid = $wechat['appid']; $secret = $wechat['secret']; $ACCESS_TOKEN = $this->getToken($appid,$secret); $url = $this->getQrcodeurl($ACCESS_TOKEN,$fqid,1); return DownLoadQr($url,time()); } protected function getQrcodeurl($ACCESS_TOKEN,$fqid,$type = 1){ $url = self::$qrcode_url.'access_token='.$ACCESS_TOKEN; if($type == 1){ //生成永久二维码 $qrcode= '{"action_name": "QR_LIMIT_SCENE", "action_info": {"scene": {"scene_id": '.$fqid.'}}}'; }else{ //生成临时二维码 $qrcode = '{"expire_seconds": 1800, "action_name": "QR_SCENE", "action_info": {"scene": {"scene_id": '.$fqid.'}}}'; } $result = $this->http_post_data($url,$qrcode); $oo = json_decode($result[1]); if(!$oo->ticket){ $this->ErrorLogger('getQrcodeurl falied. Error Info: getQrcodeurl get failed'); exit(); } $url = self::$qrcode_get_url.'ticket='.$oo->ticket.''; return $url; } protected function getToken($appid,$secret){ $ACCESS_TOKEN = file_get_contents(self::$token_url."appid=$appid&secret=$secret"); $ACCESS_TOKEN = json_decode($ACCESS_TOKEN); $ACCESS_TOKEN = $ACCESS_TOKEN->access_token; return $ACCESS_TOKEN; } protected function http_post_data($url, $data_string) { $ch = curl_init(); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_POSTFIELDS, $data_string); curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json; charset=utf-8', 'Content-Length: ' . strlen($data_string)) ); ob_start(); curl_exec($ch); if (curl_errno($ch)) { $this->ErrorLogger('curl falied. Error Info: '.curl_error($ch)); } $return_content = ob_get_contents(); ob_end_clean(); $return_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); return array($return_code, $return_content); } //下载二维码到服务器 protected function DownLoadQr($url,$filestring){ if($url == ""){ return false; } $filename = $filestring.'.jpg'; ob_start(); readfile($url); $img=ob_get_contents(); ob_end_clean(); $size=strlen($img); $fp2=fopen('./Uploads/qrcode/'.$filename,"a"); if(fwrite($fp2,$img) === false){ $this->ErrorLogger('dolwload image falied. Error Info: 无法写入图片'); exit(); } fclose($fp2); return './Uploads/qrcode/'.$filename; } private function ErrorLogger($errMsg){ $logger = fopen('./ErrorLog.txt', 'a+'); fwrite($logger, date('Y-m-d H:i:s')." Error Info : ".$errMsg."\r\n"); }}
看完了这篇文章,相信你对"PHP微信开发之如何实现二维码生成类"有了一定的了解,如果想了解更多相关知识,欢迎关注行业资讯频道,感谢各位的阅读!
二维
二维码
生成
开发
篇文章
图片
完了
更多
服务器
知识
行业
资讯
资讯频道
频道
永久
服务
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
管家婆服务器支持者
炸我的世界服务器的人现在在哪
网络安全揭秘事件机案列
强震数据库在哪可以下载
电脑服务器有问题开不了机
mysql数据库 集群
软件开发最小人员配比
机器人怎么做软件开发
沈阳 服务器托管
计算机3级网络技术考试时间
郑州软件开发区在哪里
网络安全攻防真题
私募痛数据库
大华网络安全漏洞
互联网科技刷脸技术
高校平台同一堂网络安全课堂
应用软件开发工程师考试科目
经验数据库
软件开发公司排名哪家专业
最美声音软件开发
js数据库登录验证
aupp免费同人数据库
软件开发岗位要做什么
租哪里的服务器安全
无线网络安全中的基本术语
网络技术公司成本构成
网络安全十禁止
nginx下载服务器
软件开发自考本科选哪个专业
数据库属于什么课