discuz获取用户头像函数
时间 : 2023-12-27 00:22:02 声明: : 文章内容来自网络,不保证准确性,请自行甄别信息有效性

最佳答案

要获取Discuz用户头像,可以使用以下函数:

```php

function getAvatar($uid) {

$uid = intval($uid);

$avatar = '';

$avatar_dir = './uc_server/data/avatar/';

$avatar_file = $avatar_dir . '/avatar_' . $uid . '.jpg';

if (file_exists($avatar_file)) {

$avatar = '/uc_server/data/avatar/avatar_' . $uid . '.jpg';

}

return $avatar;

}

这个函数接受一个用户的uid作为参数,并返回用户头像的URL。首先,我们将传入的UID转为整数然后初始化一个空字符串来存储头像的URL。

在Discuz安装目录中,用户的头像文件存储在`./uc_server/data/avatar/`目录下,文件名为`avatar_用户UID.jpg`。我们拼接出头像文件的路径并检查文件是否存在。如果存在,说明用户有上传头像,我们将头像的URL设置为`/uc_server/data/avatar/avatar_用户UID.jpg`。

最后,返回头像的URL。

你可以在需要的地方调用这个函数,传入用户的UID,就可以获取到用户的头像URL,然后在页面上显示出来。

其他答案

要获取Discuz用户头像,可以使用以下函数:

function getAvatar($uid){

global $_G;

$avatarUrl = $_G['setting']['ucenterurl'] . '/avatar.php?uid=' . $uid . '&size=middle';

return $avatarUrl;

}

该函数需要传入一个用户的UID作为参数,然后会返回该用户的头像URL。

在函数中,首先通过`global $_G`语句将`$_G`全局变量引入函数作用域,以便使用Discuz的全局设置。通过`$_G['setting']['ucenterurl']`可以获取到Ucenter的地址,然后将用户的UID和头像尺寸添加到URL中拼接出完整的头像URL。

在Discuz默认安装中,用户头像的文件名通常是`avatar_[UID]_[SIZE].jpg`,其中[UID]代表用户的UID,[SIZE]代表头像的尺寸(如small、middle、big等)。然后可以使用该URL直接在页面中显示用户头像。

使用示例:

$uid = 123; // 假设用户的UID是123

$avatarUrl = getAvatar($uid);

echo '<img src="' . $avatarUrl . '">';

这样就可以获取到用户的头像URL,并在页面中显示出来。

以上是一个简单的获取Discuz用户头像的函数,你可以根据自己的需求进行相应的修改和扩展。