毎日のポイント プラス 1 を達成する
php メソッド: 1. データ テーブルにフィールド logintime を追加します; 2. 1 日の 0 時間 0 分 0 秒を使用して、最終ログイン時刻と比較します。 3.パス「if($lastLogintime < $today) {...}」を使用してポイントを増やすことができます。
この記事の動作環境: Windows 7 システム、PHP バージョン 7.4、Dell G3 コンピューター。
PHP で毎日ポイントプラス 1 を達成するにはどうすればよいですか?
php は 1 日に複数のログインを実現し、ポイントを獲得するのは 1 回だけです:
インターネット上で多くのケースを見つけましたが、どれも似たような感じです。まだかなり面倒なので、自分で試してみました。この関数の実装方法
この関数を実装するには、最終ログイン時刻を示すフィールド logintime をデータ テーブルに追加しました。その日の 0 時 0 分 0 秒と最終ログイン時刻を比較します。最終ログイン時刻がこの時点より大きい場合は、すでにログインしていることを意味します。最終ログイン時刻がこれより小さい場合は、この時点では、最初にログインしたことを意味します。一度ログインするとポイントが増加します。
アップロード コード:
// 判断是否是一天中第一次登录 // 上一次登陆的时间 $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で毎日ポイントを1ポイント追加する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。