Heim  >  Artikel  >  Backend-Entwicklung  >  Beispiel für die PHP-Implementierung der Funktion, sich mehrmals am Tag anzumelden und nur einmal Punkte zu sammeln

Beispiel für die PHP-Implementierung der Funktion, sich mehrmals am Tag anzumelden und nur einmal Punkte zu sammeln

黄舟
黄舟Original
2017-10-30 11:02:041067Durchsuche

Das Beispiel in diesem Artikel beschreibt die Funktion von php basierend auf der Beurteilung der Anmeldezeit, um bei mehreren Anmeldungen pro Tag nur einen Punkt zu erreichen. Ich teile es Ihnen als Referenz mit:

Ich habe viele Fälle im Internet gefunden und sie schienen alle ziemlich kompliziert zu sein, also habe ich es selbst versucht und wie man diese Funktion implementiert

Um diese Funktion zu implementieren, habe ich der Datentabelle ein Feld logintime hinzugefügt, das die letzte Anmeldezeit angibt, und dann 0:00:00 verwendet Tag und die letzte Anmeldezeit. Wenn die letzte Anmeldezeit größer als dieser Zeitpunkt ist, bedeutet dies, dass Sie sich angemeldet haben. Wenn die letzte Anmeldezeit kürzer als dieser Zeitpunkt ist, bedeutet dies, dass Sie sich zum ersten Mal anmelden , Punkte erhöhen

Up-Code:

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

Es ist zu beachten, dass Sie auch die Anmeldezeit ändern müssen:

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

Auf diese Weise funktioniert diese Funktion erreicht wird

Das obige ist der detaillierte Inhalt vonBeispiel für die PHP-Implementierung der Funktion, sich mehrmals am Tag anzumelden und nur einmal Punkte zu sammeln. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn