0

問題があります。スクリプトを実行していて、PHP 行が $num_newlines と等しい数に複製されます。これは私が現在使用しているものです:

for ($i=1; $i<=($num_newlines - 1); $i++) {
$tweetcpitems->post('statuses/update', array('status' => wordFilter("The item $array[$i]    has been released on Club Penguin.")));
}

私がやりたいことは、多くの重複が作成される間に90秒の間隔を空けることです。つまり、10 秒間に 50 回もツイートしているわけではありません。私がやりたいのは、各ツイートの間に 90 秒の間隔を追加することです。助けてください!

4

2 に答える 2

1

2つのオプション:

  1. CRONジョブを設定できる場合-投稿するメッセージのキューを(データベースまたはファイルに)作成し、90秒ごとにスクリプトを実行して、キューから1つのメッセージを取得して削除し、送信します。

  2. sleepメッセージの送信の間に関数を使用します。時間制限を増やす必要があるかもしれないことに注意してください(コメントから:Linuxではスリープ時間は無視されますが、Windowsでは実行時間としてカウントされます)。

于 2012-05-20T21:01:01.450 に答える
1

sleep()関数を使用します。

for ($i = 1; $i <= $num_newlines - 1; $i ++) {
    $tweetcpitems->post('statuses/update', array('status' => wordFilter('The item ' . $array[$i] . ' has been released on Club Penguin.')));
    sleep(90);
}

このスニペットは、すべてのツイートの後、最後のツイートの後もスリープします。最後のツイートの後に不要な睡眠を防ぐには、次のようにします。

for ($i = 1; $i <= $num_newlines - 1; $i ++) {
    $tweetcpitems->post('statuses/update', array('status' => wordFilter('The item ' . $array[$i] . ' has been released on Club Penguin.')));

    if ($i <= $num_newlines - 1) {
        sleep(90);
    }
}
于 2012-05-20T20:51:36.547 に答える