0

ユーザーに「仮想コイン」を1時間あたり約100で提供するアプリケーションを作成したいのですが、ユーザーがログアウトした場合、ユーザーあたり1時間あたり100で仮想コインを追加し続けるにはどうすればよいですか?

4

2 に答える 2

3

1 時間ごとに実行され、各ユーザーに 100 コインを追加するスクリプトを呼び出す cronjob を使用して実行できます。

編集: cj を使用できない、または使用したくない場合は、各ユーザーの次のログインで計算できます。最後のログインからのタイムスタンプを保存して計算するだけです。

スクリプトを使用した例を次に示します。

最後のログインを想定: 11-29-2012 00:00:00 タイムスタンプ: 1354143600

新しいログインを想定: 11-30-2012 05:10:00 タイムスタンプ: 1354248600

phpコード:

<?php
  $t1 = 1354143600;
  $t2 = 1354248600;
  $diff = $t2-$t1;

  // calculate hours
  $hours = $diff/60/60;
  // coins
  $coins = $hours*100;

  print $hours . ' hours, ' . $coins . ' coins';

出力:

29.166666666667 時間、2916.6666666667 コイン

于 2012-11-30T12:23:26.213 に答える
0

ユーザーがログアウトした時刻を保存できます。次に、経過時間を計算し、ユーザーが再度ログインしたときにコインを追加します。ログインしているかどうかに関係なく、すべてのユーザーに対してまったく同時にコインを追加する必要がある場合は、cron ジョブの方がよいと思います。

于 2012-11-30T12:27:08.237 に答える