主机参考: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);}}}}希望对大家有用。
相关建议:
微信授权登录怎么用?总结微信授权登录实例的使用方法,
微信开发微信授权详解
以上代码是微信授权后,如何将用户头像保存到服务器的细节。请多关注主机参考其他相关文章!
这几篇文章你可能也喜欢:
- 华纳云,香港特价CN2云服务器特价3折低至240/年,精选CN2/站群/大带宽/高防服务,E5系列服务器搭配50M CN2专线,续费同享优惠
- SpinServers,国外高性能高配独立服务器特价优惠低至$179/月,美国圣何塞/达拉斯机房,2*E5-2696 v3处理器/256G内存/10Gbps超大带宽
- ToToTel- 真正的黑色星期五活动。 始终先打开服务器。 满意后再付款! 支持PAYPAL/支付宝
- RackNerd:15美元/年/1核@Ryzen 7950X/512MB内存/6GB NVMe空间/400GB流量/1Gbps端口/KVM/洛杉矶/圣何塞/芝加哥/纽约/达拉斯等。
- CSTserver 宣传香港/美国优化线路云服务器为 2.2 美元/月,裸机为 19.9 美元/月,高防御为 30 美元/月,10G 高带宽为 39 美元/月,站点组为 105 美元/月。
本文由主机参考刊发,转载请注明:微信授权后用户头像保存到服务器的实现方法(微信授权变更后用户头像保存到服务器的实现方法) https://zhujicankao.com/81078.html
评论前必须登录!
注册