php如何实现每天积分加一

这篇文章给大家分享的是有关php如何实现每天积分加一的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

成都创新互联公司专注于企业成都全网营销推广、网站重做改版、彭山网站定制设计、自适应品牌网站建设、H5场景定制成都做商城网站、集团公司官网建设、成都外贸网站建设、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为彭山等各大城市提供网站开发制作服务。

php实现每天积分加一的方法:1、在数据表里增加一个字段logintime;2、使用一天中的零时零分零秒和上一次的登录时间进行比较;3、通过“if($lastLogintime < $today) {...}”实现积分增加即可。

本文操作环境:Windows7系统,PHP7.4版,Dell G3电脑。

php实现一天多次登录,只积分一次功能:

在网上找了很多的案例,感觉都差不多,有的还比较的繁琐,就自己尝试了一下,如何实现这个功能

实现这个功能我在数据表里面增加了一个字段logintime,表示最后一次的登录时间,然后使用一天中的零时零分零秒和上一次的登录时间进行比较,如果上一次的登录时间大于了这个时间点表示已经登陆过,如果上一次的登录时间小于了这个时间点,则表示第一次登录,增加积分

上代码:

// 判断是否是一天中第一次登录
// 上一次登陆的时间
$lastLogintime = $userinfo['logintime'];
// 一天中的零时零分零秒
$today = strtotime(date('Y-m-d'));
if($lastLogintime < $today) {
    // 一天中第一次登录增加积分(关联更新)
    // 注意:使用关联更新数据的时候需要传递两次id
    $data['id'] = $userinfo['id'];
    $data['userinfo'] = array(
        'points' => $userinfo['points'] + C('LOGIN'),
    );
    $user->relation(true)->where(array('id'=>$userinfo['id']))->save($data);
}

需要注意的是还要修改登录时间:

// 更新登录时间和登录ip
$updateData = array(
    'id' => $userinfo['id'],
    'userinfo' => array(
        'logintime' => time(),
        'loginip' => getIP(),
    ),
);
$user->relation(true)->where(array('id'=>$userinfo['id']))->save($updateData);

感谢各位的阅读!关于“php如何实现每天积分加一”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!


当前名称:php如何实现每天积分加一
分享地址:http://scyanting.com/article/jsopch.html