去评论
dz插件网

discuz 获取用户资料getuserprofile函数解析

xiao9469
2021/12/29 17:16:37
此函数,提供一个参数,内容为用户的字段名,即可返回出来他值的内容
如:我要获取用户
威望::getuserprofile('extcredits1')
金钱: getuserprofile('extcredits2')
贡献:getuserprofile('extcredits3')
用户uid:getuserprofile(uid')
听从:getuserprofile('follower ')  
收听:getuserprofile('following ')  
主题: getuserprofile('threads')

函数定义:function_core.php
函数参数:
field:资料段名称
返回值:存在返回资料内容反正返回null
  1. function getuserprofile($field) {        global $_G;        if(isset($_G['member'][$field])) {                return $_G['member'][$field];        }        static $tablefields = array(                'count'                => array('extcredits1','extcredits2','extcredits3','extcredits4','extcredits5','extcredits6','extcredits7','extcredits8','friends','posts','threads','digestposts','doings','blogs','albums','sharings','attachsize','views','oltime','todayattachs','todayattachsize', 'follower', 'following', 'newfollower', 'blacklist'),                'status'        => array('regip','lastip','lastvisit','lastactivity','lastpost','lastsendmail','invisible','buyercredit','sellercredit','favtimes','sharetimes','profileprogress'),                'field_forum'        => array('publishfeed','customshow','customstatus','medals','sightml','groupterms','authstr','groups','attentiongroup'),                'field_home'        => array('videophoto','spacename','spacedescription','domain','addsize','addfriend','menunum','theme','spacecss','blockposition','recentnote','spacenote','privacy','feedfriend','acceptemail','magicgift','stickblogs'),                'profile'        => array('realname','gender','birthyear','birthmonth','birthday','constellation','zodiac','telephone','mobile','idcardtype','idcard','address','zipcode','nationality','birthprovince','birthcity','resideprovince','residecity','residedist','residecommunity','residesuite','graduateschool','company','education','occupation','position','revenue','affectivestatus','lookingfor','bloodtype','height','weight','alipay','icq','qq','yahoo','msn','taobao','site','bio','interest','field1','field2','field3','field4','field5','field6','field7','field8'),                'verify'        => array('verify1', 'verify2', 'verify3', 'verify4', 'verify5', 'verify6', 'verify7'),        );        $profiletable = '';        foreach($tablefields as $table => $fields) {                if(in_array($field, $fields)) {                        $profiletable = $table;                        break;                }        }        if($profiletable) {                if(is_array($_G['member']) && $_G['member']['uid']) {                        space_merge($_G['member'], $profiletable);                } else {                        foreach($tablefields[$profiletable] as $k) {                                $_G['member'][$k] = '';                        }                }                return $_G['member'][$field];        }        return null;}