1

ユーザーがMySQLデータベースまたはテキストファイルに保存され、毎週特定の時間に特定のアドレスに電子メールで送信されるデータを送信するサービスを作成しています。

これはPHPの目的ではないことを理解しており、その仕事をするCronと呼ばれるものを読んだことがありますが、他にオプションがあるかどうか疑問に思っていました。おそらくデータを貼り付けたり添付したりしてGmailから送信できるスクリプトはありますか?

4

3 に答える 3

1

最良の方法は、cronジョブを使用することです。何らかの理由でそれらを使用できない場合は、ジョブをスケジュールできるthecloudblocks.comのサービスを使用できます。

または、仕事の時間になるまでスリープする関数を作成することもできます。好き、

function do_some_job_at($time){
       time_sleep_until($time);
       JOB();
}

do_some_job_at(time() + 20); //Runs job after 20 seconds.
于 2012-04-06T13:57:49.713 に答える
1

私はそれを行うために2つの方法でしか考えることができません:

  1. x分ごとに送信スクリプトを呼び出すcronジョブがある

    $database->query("SELECT * FROM `mail_queue` WHERE `time` < " . time());
    while($object = $res->fetch_object()){
        mail($object->to, $object->subject, $object->message, "FROM: xpto@domain.com");
    }
    

    (ウェブホスティングアカウントを使用している場合は、コントロールパネルで簡単に作成できます)

    * * * * * /bin/php complete_path_to_your_php_script.php
    
  2. スクリプトをループで実行している(タイムアウト、エラー、メモリの停止などが原因で動作を停止する可能性があるため、信頼性が低い)

于 2012-04-06T13:58:46.457 に答える
0

phpスクリプトを常に実行する必要がある場合は、upstartジョブ/サービスを使用することをお勧めします

于 2015-01-05T13:36:54.210 に答える