uchome 常用函数示例

一。inserttable

//添加数据
//前3个参数 $tablename插入的表名称  $insertsqlarr数据数组 $returnid是否返回插入ID  
function inserttable($tablename, $insertsqlarr, $returnid=0, $replace = false, $silent=0) {
    global $_SGLOBAL;

    $insertkeysql = $insertvaluesql = $comma = '';
    foreach ($insertsqlarr as $insert_key => $insert_value) {
        $insertkeysql .= $comma.'`'.$insert_key.'`';
        $insertvaluesql .= $comma.'\''.$insert_value.'\'';
        $comma = ', ';
    }
    $method = $replace?'REPLACE':'INSERT';
    $_SGLOBAL['db']->query($method.' INTO '.tname($tablename).' ('.$insertkeysql.') VALUES ('.$insertvaluesql.')', $silent?'SILENT':'');
    if($returnid && !$replace) {
        return $_SGLOBAL['db']->insert_id();
    }
}

 

插入和更新数据的方式也非常简单,不用你自己拼接sql,以插入数据为例:

function inserttable($tablename, $insertsqlarr, $returnid=0, $replace = false)

我们插入员工信息,则可以这样写:

inserttable('staffs',array('name'=>'hankshuang','post'=>'de','age'=>25))

 

二。cache_write

提供缓存的写入和更新,最重要的方法就是cache_write方法,看看声明:

function cache_write($name, $var, $values)

如果我想把员工数据缓存起来,那么对于$staff = array('name'=>'hankshuang','age'=>25)就调用方法

    cache_write('staffcache','staff',$staff)

下次想用这个内容的话,直接include data目录下的这个data_staffcache.php文件,就得到$staff这个对象了,原理简单,用起来却很方便.

 

三。realname_set

//获取用户名
function realname_set($uid, $username, $name = '', $namestatus = 0)
{
    global $_SGLOBAL, $_SN, $_SCONFIG;    
    if ($name) {
        $_SN[$uid] = ($_SCONFIG['realname'] && $namestatus) ? $name : $username;

    } elseif (empty($_SN[$uid])) {
        $_SN[$uid] = $username;
        $_SGLOBAL['select_realname'][$uid] = $uid; //需要检索
    }
}

顾名思义,第一个参数是uid,也就是用户的uid,第二个参数是用户名,

第三个参数是指如果$_SCONFIG['realname'] 打开了,而且传进来了昵称,我们将强制更新$_SN【uid】。

如果,没有传递第三个,就先判定$_SN【$UID】有没有,没有的话,才更新,有的话,就不更新,

登录do_login.php示例:

realname_set($space['uid'], $space['username'], $space['name'], $space['namestatus']);

 

posted @ 2013-10-26 22:41  等风来。。  Views(208)  Comments(0)    收藏  举报
------------------------------------------------------------------------------------------------------------ --------------- 欢迎联系 x.guan.ling@gmail.com--------------- ------------------------------------------------------------------------------------------------------------