申し訳ありませんが、私は PHP が初めてで、サーバー側で機能するカウンターを作成するためのヘルプ/ガイダンスが必要なので、初期値を更新すると思いますか?
たとえば、1500 のベース番号から始めて、その番号を 2 分ごとに 1 ずつ増やしていく必要があります。
初期値を sql に保存する必要がありますか、それとも txt ファイルを更新できますか?
どんな助けでも素晴らしいでしょう、
ありがとう
必要に応じて実行できSQL
ますが、テキスト ファイルでも問題ありません。値 (1500) を保存してから、cronjobを作成し、クエリをPHP
実行するコードを設定する必要があるファイルを実行させます。SQL
その値を更新するか、そのテキスト ファイルを 2 分ごとに更新するコードを更新します。
例:
# Every two minutes
*/2 * * * * /your/path/too/this/file/updatecode.php
あなたのPHP
ファイルで:
$SQL = "UPDATE table SET columnname = columname + 1";
// etc...
// OR the text file update code
何らかの理由で特に保存する必要がない場合は、cron などを実行する必要はありません。開始したい特定の時点のタイムスタンプを取得します。それから分数を計算し、それを開始番号 (1500) に追加します。
//Start Number
$n = 1500;
$cur_time = time();
$orig_time = strtotime("2013-10-21 10:00:00");
//New Number + difference in minutes (120 seconds for 2 mins) since start time
$newn = $n + round(abs($cur_time - $orig_time) / 120,0);
// Output New Number
echo $newn;
そして、コピー/貼り付けのために1行にまとめたい場合
echo 1500 + round(abs(time() - strtotime("2013-10-21 10:00:00")) / 120,0);
それを保存する必要がある場合、これのための SQL データベースはおそらくやり過ぎです。番号を作成し、シリアル化し、ファイルに保存します。次回はファイルからロードし、アンシリアライズし、インクリメントし、シリアライズして保存します。数値とともにタイム スタンプをファイルに保存すると、2 分ごとにジョブを実行する必要がなくなり、代わりにファイルから数値を読み込むときに正しい値を計算することができます。
このようなもの(ただし、エラーチェックなどを追加する必要があり、計算が正しいことを確認するために実際に試したことはありません...しかし、主なアイデアは見えるはずです)。
<?php
if(file_exists('mydatafile')) {
$data = unserialize(file_get_contents('mydatafile'));
// Calculate correct value based on time stamp
$data['number'] += round((time() - $data['timestamp']) / 120);
}
else {
// Init the number
$data["number"] = 1500;
}
// Print it if you need to here
// Update time stamp
$data["timestamp"] = time();
// Serialize and save data
file_put_contents('mydatafile', serialize($data)));
日付を使用するだけで、データベースなしでこれを行うことができます。2 つの日付 (現在の日付とスクリプトを作成した開始日) の時間差を計算し、それを 2 分間の正しいミリ秒数に分割し、それを最初の 1500 に追加します。