0

24時間ごとに乱数(1〜5)を自動的に追加してテキストファイルに保存し、24時間後に新しい乱数を作成して、テキストファイルの前の結果に追加するスクリプトが必要です。何かを閉じるには更新ボタンが必要ですが、自動的に実行したいので、1人のユーザーが毎日ページにアクセスし、1人が月に1回ページにアクセスすると、両方に同じ番号が表示されます(これはテキストファイルから読み取られます)。

これまでの私のコードは次のとおりです。

<?php

$dataFile = "amt.txt";

$date1 = date("H:i:s");
$date2 = date("H:i:s",filemtime("amt.txt"));

$diff = abs(strtotime($date2) - strtotime($date1));


$secs = floor($diff);


if ($diff < 86400) {

    echo "$date1 \n"; 
echo "$date2 \n";
printf($secs);
    exit;
}   

if (!file_exists($dataFile)) {
    $amt = 0;
}
else {
    // Otherwise read the previous value from
    // the file.
    $amt = (int) file_get_contents($dataFile);
}

// Generate the new value...
$Number = rand(1,5);
$total = $amt + $Number;
echo "$". $total ."/-";

// And dump it back into the file.
if (!file_put_contents($dataFile, $total)) {
    // If it fails to write to the fle, you'll 
    // want to know about it...
    echo "Failed to save the new total!";
}



?>

基本的に、時間の経過とともに論理的に増加するはずの偽のサブスクライバー数を表示したいと思います。だから私は毎日数を更新したいのですが、私はこれを私のウェブサイトに月間購読者数として持っているので、ユーザーがいつでもウェブサイトにアクセスすると、他のユーザーがそのウェブサイトにアクセスしたときと同じ数字が表示されます正確な時間。これが今より明確になることを願っています。

4

1 に答える 1

0

最初に date(xxx) の代わりに time() を使用して、差分秒数を直接取得します。しかし、私はこれの目的を理解していません。番号を追加するか上書きするか、また番号が24時間ごとに変更される場合、1か月後にユーザーが同じ番号を取得する必要がある理由もわかりません。

$date1 = time();
$date2 = filemtime("amt.txt");

$diff = $date1 - $date2;

if ($diff < 86400)
{
    echo "$date1 \n"; 
    echo "$date2 \n";

    printf($diff);

    exit;
}
于 2013-03-03T13:31:49.050 に答える