You are here

向对象$user中存储数据

g089h515r806 的头像
Submitted by g089h515r806 on 星期五, 2009-08-07 15:28

老葛的Drupal培训班 Think in Drupal

users包含了一个名为data的字段,用于存储保存序列化数组中的额外信息。如果你向对象$user中添加自己的数据,可以通过使用user_save()将数据存储在这一字段上。
 
// Add user's disposition.
global $user;
$extra_data = array('disposition' => t('Grumpy'));
user_save($user, $extra_data);
 
    现在,对象$user拥有了一个永久属性:
global $user;
print $user->disposition;
 
Grumpy
 
    尽管这种方式很方便,但是在用户登录和初始化对象$user时,由于以这种方式存储的数据需要反序列化,这样会增加更多的开销。因此,不加考虑就向$user中放入大量的数据将会引起一个性能瓶颈。一个可选的并且是更好的方法是,在$user加载时向它添加属性方法,将会在“在加载时向对象$user添加数据”一节进行讨论。
 

Drupal版本: