8

私はcronジョブが初めてです。私はcronジョブに関するいくつかの基本を学びました。cronタブを使用してphpを呼び出すことができます。/etc/crontab で次のコマンドを使用して

  10 *    * * *   root    /usr/bin/php /var/www/PATH TO SCRIPT/email.php 

email.php には次のコードがあります

 #!/usr/bin/php
 <?php
    mail ("examplemail@mail.com", "Cron Successful Public HTML!","Hello World from mycron.php!");
 ?>

10分ごとにメールが届きます。しかし、php から cron ジョブを呼び出す (php から cron を呼び出す) 方法があることを知っておく必要があります。サーフィンをしてアイデアを得ることができますが、自分の仕事を行う正確な方法を理解することはできません。これは、phpを使用してジョブを追加するために使用したコードです

   exec('echo -e "crontab -e \n2 * * * * /usr/bin/php /var/www/PATH TO THE SCRIPT/crontest1.php" ');

それは私のために働いていません。php から cron を呼び出したり追加したりする方法を教えてください。そのため、phpファイルを実行してメールを送信でき、phpファイル自体で時間間隔を変更できます。

4

3 に答える 3

10

ニック・クラークによるPHPスクリプトを介してcronジョブを設定するにはどうすればよいですか

これにより、毎日午前 9 時 30 分に実行されるスクリプトが追加されます。

exec('echo -e "`crontab -l`\n30 9 * * * /path/to/script" | crontab -');

このスクリプトを Web サーバーから実行している場合、アクセス許可に関する問題が発生する可能性があります。これを回避するには、別のアプローチをお勧めします。

ここに考えられる解決策の 1 つがあります。実行する必要があるスクリプトのリストを作成します。これをテキスト ファイルまたはデータベースに保存できます。このリストを読み取り、毎分または 5 分ごとに (cronjob を使用して) 実行するスクリプトを作成します。スクリプトは、スクリプトのリストをいつ実行し、いつ単純に終了するかを決定できるほどスマートである必要があります。

あなたはこのようにすることができます..

その他のリンク:

PHP スクリプトを使用して cron ジョブをインストールする

PHPスクリプトからcronジョブを呼び出す方法は?

于 2012-07-23T12:55:35.143 に答える
0

直接追加できるはずです

echo "2 * * * * /usr/bin/php /var/www/PATH TO THE SCRIPT/crontest1.php\n" > /etc/cron.d/username
于 2012-07-23T12:55:56.937 に答える