while() ループを継続的に実行するスクリプト、execute.php があります。特定の時間に開始するためにCronを介して最初にトリガーされ、開始時間と終了時間を詳細に示すMySQLテーブルによって制御される所定の終了時間に達するまで、whileループ(定期的にスリープ)を実行します。
スクリプトの各ループで、現在のタイムスタンプを DB テーブルに入れます。その後、Cron タスクを 5 分ごとに実行し、スクリプトがクラッシュしていないことを確認し、クラッシュしている場合は、execute.php に再度アクセスして再起動します。明らかに、タイムスタンプ テーブルをチェックして 2 分以上経過していないことを確認する check.php のようなものを実行するように Cron タスクを設定できますが、そのスクリプトを execute.php で再起動するにはどうすればよいでしょうか。
私が考えることができる唯一の解決策は、check.php に新しい Cron タスクを数秒先にスケジュールさせて、execute.php を実行させることですが、これは扱いにくいようです。問題の核心は、ある PHP スクリプトをこのコンテキストで別の PHP スクリプトを実行させる方法はあるのかということです。
ありがとう。