ecshop のスケジュールされたタスクの問題
サイト全体にスケジュールされたタスクのトリガー コード: 、毎朝 09:00 に実行されるように設定しました。すべての分 (0 ~ 60) が分に追加されます。実行後に閉じるは選択されていません。詳細オプションは選択されていません。プラグインは常にオンの状態です。
現在の問題は、ページの更新がプログラムの実行をトリガーし、外部送信メソッドが呼び出されたときに中断されることです(外部メソッドを作成し、[実行]をクリックすると中断されません)。バックグラウンドで「スケジュールされたタスク」リストを実行すると、プログラムが完全に実行された後、送信メソッドの場所に関係なく、プログラムを最後まで実行するにはどうすればよいでしょうか?
さらに、ignore_user_abort(true) と set_time_limit(0) の両方を使用しました。
-----解決策---------
「ページの更新がプログラムの実行をトリガーするため、外部の送信メソッドが呼び出されると中断されます。」次に、テキスト メッセージの送信専用の URL を記述します。
次に、fsockopen を通じてデータを入力します。
$fp = fsockopen("www.example.com", 80, $errno, $errstr, 30);
if (!$fp) {
echo "$errstr ($errno) )
n";
} else {
$out = "GET / HTTP/1.1rn";
$out .= "ホスト: www.example.comrn";
$out .= "接続: Closernrn";
fwrite($fp, $out);
while (!feof($fp)) {
echo fgets($fp, 128);
}
fclose($fp);
}