1

データベース上で常に機能するスクリプトを実行しています。ただし、1 時間に 1 回スクリプトを再起動する必要があります。明らかに、私はそれを自動的に行うことはできません。デーモンは使いたくありません。今の私には複雑すぎます。より簡単な解決策は cron ジョブを使用することですが、最大の欠点は、最後のスクリプトを停止できないことです。スクリプトが無限while(true)ループで実行される

ただし、スクリプトで関数を作成した場合、それは可能ですか?

function exitScript()
{
  exit;
}

そして、私が次のようなことをした場合、Cronの仕事で

php /home/Path/public_html/webservice/myScript.php exitScript and then
php /home/Path/public_html/webservice/myScript.php

フォーマットはどうなりますか? cron ジョブを使用して両方を 1 つずつ実行するにはどうすればよいですか? または、そうする別の PHP を作成するにはどうすればよいですか?

アドバイスが必要です。

4

1 に答える 1

1

これは、あなたが使用できる簡単に作成できる小さなトリックです..

最初に、1 時間ごとに実行する cron ジョブを設定します。

* */1 ..... cronjob.php

2番目 スクリプトの開始時に、時間とともに1つの定数を定義します。

define('SCRIPT_START_TIME', time());

3番目に、終了スクリプトで、この定数から現在の時刻まで59分経過した場合に終了するように条件チェックを設定します.. :)

function exitScript()
{
  if((time() - SCRIPT_START_TIME) > 59*60){
     exit();
  }
}

LOOPが終了スクリプトを開始する間、それぞれ4番目。

于 2013-04-19T08:13:16.753 に答える