主机参考:VPS测评参考推荐/专注分享VPS服务器优惠信息!若您是商家可以在本站进行投稿,查看详情!此外我们还提供软文收录、PayPal代付、广告赞助等服务,查看详情! |
我们发布的部分优惠活动文章可能存在时效性,购买时建议在本站搜索商家名称可查看相关文章充分了解该商家!若非中文页面可使用Edge浏览器同步翻译!PayPal代付/收录合作 |
本文主要和大家分享一下微信授权后将用户头像保存到服务器的方法。最近做了一个关于微信授权登录的项目,授权就不多说了。我得到了用户的基本信息,格式如下:
$ user _ info = # 39{ openid : xx , 昵称 : 不错的胡椒。“, 性 :2, 语言 : zh _ CN , 城市 : 杭州”, 省 : 浙江, ;国家 : 中国”、 headimgurl : http:\/\/wx . qlogo . cn \/mmopen \/VI _ 32 \/q0j 4 twgtftjpziaqoipgia 9 zvj 9 heawlmtiavv 4 rxr 40 NQ 1 ZP qpy iam 58 feisdifpn 0 q 5 veexliakiyaiabgk 2 zhg \/0 ;, 特权 :[]}';直接把headimgurl放仓库,bug来了。
话不多说,言归正传:
微信返回json格式。
$ user _ arr = JSON _ decode($ user _ info,true);获取用户openid对比数据库,判断是否为首次授权。
$ mem _ info = $ member - gt;get userinfo(array( # 39;openid # 39= gt$ user _ arr[ # 39;openid # 39]));第一个授权或头像链接地址与最后一个不同。
如果(!$ mem _ info | | $ mem _ info[ # 39;wximage # 39]!= $ user _ info[ # 39;标题 # 39;]){ $ headimgurl = saveheadimgurl($ user _ arr[ # 39;headimgurl # 39]);$headimg?0:$ head img = # 39;lib/avata . jpg # 39;;if($ mem _ info[ # 39;wximage # 39]!= $ user _ info[ # 39;标题 # 39;]){ unlink($ mem _ info[ # 39;标题 # 39;]);}//快来写你的注册或者修改代码!}保存图片
函数saveheadimgurl($ head img){ $ header = array( # 39;user -代理:Mozilla/5.0(Windows NT 6.1;Win64x64rv:45.0)壁虎/20100101火狐/45.0 # 39;, 'accept -语言:zh-CN,zh;q=0.8,en-US;q=0.5,en;q = 0.3 # 39, 'accept -编码:gzip,deflate # 39, );$ curl = curl _ init();curl_setopt($curl,CURLOPT_URL,$ head img);curl_setopt($curl,CURLOPT_RETURNTRANSFER,true);curl_setopt($curl,CURLOPT_FOLLOWLOCATION,true);curl_setopt($curl,CURLOPT_HTTPHEADER,$ header);$ data img = curl _ exec($ curl);$code = curl_getinfo($curl,curl info _ HTTP _ CODE);curl _ close($ curl);if($ code = = 200){ $ imgbase 64 code = ;资料:图片/JPEG;base64 ;.base64 _ encode($ data img);} $ img _ content = $ imgBase64Codeif(preg _ match( # 39;/^(data:\s*image\/(\w+);base64,)/ # 39;,$img_content,$ result)){ $ type = $ result[2];创建(DOFILESPATH。 head );$new_file = DOFILESPATH。 head/ ;. md5(uniqid(rand()))。 .{ $ type } ;if(file _ put _ contents($new _ file,base64 _ decode(str _ replace($result[1], # 39;',$ img _ content)))){ return $ new _ file;} }返回false}在指定位置创建文件。
函数create($ dir){ if(is _ dir($ dir)){ $ temp = explode( # 39;/',$ dir);$ cur _ dir = # 39';for($ I = 0;$ i ltcount($ temp);$i++){ $cur_dir。= $temp[$i]。'/';如果(!is _ dir($ cur _ dir)){ @ mkdir($ cur _ dir,777);}}}}希望对大家有用。
相关建议:
微信授权登录怎么用?总结微信授权登录实例的使用方法,
微信开发微信授权详解
以上代码是微信授权后,如何将用户头像保存到服务器的细节。请多关注主机参考其他相关文章!
这几篇文章你可能也喜欢:
- 微信授权后如何将用户头像保存到服务器(微信头像授权后如何撤销授权)
- Win11如何更改管理员头像Win11如何更改管理员头像(如何在win10中设置管理员头像)
- 一键在线生成国庆红旗人像
- 如何注销阿里云帐户
- 便宜国外vps论坛_【拍卖】200被已出!!拍卖 原价499的奈斯主题 PandaPro!!!
本文由主机参考刊发,转载请注明:微信授权后用户头像保存到服务器的实现方法(微信授权变更后用户头像保存到服务器的实现方法) https://zhujicankao.com/81078.html
评论前必须登录!
注册