這篇文章給大家分享的是有關(guān)php如何實(shí)現(xiàn)每天積分加一的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個(gè)參考,一起跟隨小編過來看看吧。
成都創(chuàng)新互聯(lián)公司專注于企業(yè)成都全網(wǎng)營(yíng)銷推廣、網(wǎng)站重做改版、彭山網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5場(chǎng)景定制、成都做商城網(wǎng)站、集團(tuán)公司官網(wǎng)建設(shè)、成都外貿(mào)網(wǎng)站建設(shè)、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性價(jià)比高,為彭山等各大城市提供網(wǎng)站開發(fā)制作服務(wù)。
php實(shí)現(xiàn)每天積分加一的方法:1、在數(shù)據(jù)表里增加一個(gè)字段logintime;2、使用一天中的零時(shí)零分零秒和上一次的登錄時(shí)間進(jìn)行比較;3、通過“if($lastLogintime < $today) {...}”實(shí)現(xiàn)積分增加即可。
本文操作環(huán)境:Windows7系統(tǒng),PHP7.4版,Dell G3電腦。
php實(shí)現(xiàn)一天多次登錄,只積分一次功能:
在網(wǎng)上找了很多的案例,感覺都差不多,有的還比較的繁瑣,就自己嘗試了一下,如何實(shí)現(xiàn)這個(gè)功能
實(shí)現(xiàn)這個(gè)功能我在數(shù)據(jù)表里面增加了一個(gè)字段logintime,表示最后一次的登錄時(shí)間,然后使用一天中的零時(shí)零分零秒和上一次的登錄時(shí)間進(jìn)行比較,如果上一次的登錄時(shí)間大于了這個(gè)時(shí)間點(diǎn)表示已經(jīng)登陸過,如果上一次的登錄時(shí)間小于了這個(gè)時(shí)間點(diǎn),則表示第一次登錄,增加積分
上代碼:
// 判斷是否是一天中第一次登錄 // 上一次登陸的時(shí)間 $lastLogintime = $userinfo['logintime']; // 一天中的零時(shí)零分零秒 $today = strtotime(date('Y-m-d')); if($lastLogintime < $today) { // 一天中第一次登錄增加積分(關(guān)聯(lián)更新) // 注意:使用關(guān)聯(lián)更新數(shù)據(jù)的時(shí)候需要傳遞兩次id $data['id'] = $userinfo['id']; $data['userinfo'] = array( 'points' => $userinfo['points'] + C('LOGIN'), ); $user->relation(true)->where(array('id'=>$userinfo['id']))->save($data); }
需要注意的是還要修改登錄時(shí)間:
// 更新登錄時(shí)間和登錄ip $updateData = array( 'id' => $userinfo['id'], 'userinfo' => array( 'logintime' => time(), 'loginip' => getIP(), ), ); $user->relation(true)->where(array('id'=>$userinfo['id']))->save($updateData);
感謝各位的閱讀!關(guān)于“php如何實(shí)現(xiàn)每天積分加一”這篇文章就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,讓大家可以學(xué)到更多知識(shí),如果覺得文章不錯(cuò),可以把它分享出去讓更多的人看到吧!