密通学院

 找回密码
 立即注册

QQ登录

只需一步,快速开始

查看: 8061|回复: 0

[开发] 不用插件实现Discuz注册后随机显示默认头像

[复制链接]

282

主题

27

回帖

8万

铜板

超级版主

Rank: 8Rank: 8

积分
89153
QQ
发表于 2020-4-19 11:21:11 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x

当用户在Discuz没有上传自己的头像,显示的是默认头像,那么可不可以让这个默认头像随机显示了,答案是可以的,实现起来也比较简单,如果你熟悉php的随机函数rand()的话。

先准备几张自己需要的默认头像图片,分别大小为big(200*200),middle(120*120),small(48*48),这在后面用的着。

一、打开安装的uc目录下的avatar.php查找如下代码:

  1. $size = in_array($size, array(‘big‘, ‘middle‘, ‘small‘)) ? $size : ‘middle‘;
  2. $avatar_url = "images/noavatar_$size.gif";
复制代码

替换成:

  1. $size = in_array($size, array(‘big‘, ‘middle‘, ‘small‘)) ? $size : ‘middle‘;
  2. $rand_num = rand(1,5);//使用了rand()这个随机函数
  3. $avatar_url = ‘images/randuser/‘.$size.‘/‘.$rand_num.‘.gif‘;
复制代码

PS:$avatar_url这个变量其实就是头像的地址,它后面的赋值包含了$size和$rand_num这个两个变量,$size会呈现大图、中图、小图对应的big、middle、small,$rand_num则会随机显示1-5其中的一个数字,那么不难想象,默认头像图片的地址是会随机变化的。理解一下,就很简单了。

接下来我们就应该根据$avatar_url这个变量产生的会变的图片地址上传对应的默认头像图片了,是吧,这里测试的$rand_num是1-5的随机数字,且看上面的路径,便是在image/randuser目录建立big、middle及small三个文件夹,分别上传5张即可,大小分别为big(200*200),middle(120*120),small(48*48)。

产生的默认头像图片地址会如:images/randuser/small/2.gif,这个2.gif可能会是3.gif也可能会是5.gif。


如果您有业务需求,可以和我联系:
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

首页|Archiver|手机版|小黑屋|密通学院:专业网络营销服务商

GMT+8, 2024-12-22 12:57 , Processed in 0.145508 second(s), 24 queries QQ

Powered by XMT Inc. © 2015-2025 ArrayV1.0 豫ICP备17022382号

系统运营:密城通 豫公网安备 41018302000212 号

快速回复 返回顶部 返回列表