私は私のコントローラでこれを持っている:redirect()の後に関数をバックグラウンドプロセスとして実行するにはどうすればよいですか?
function foo() {
// my code
redirect(site_url('competitor/main'), 'refresh');
$this->foo2();
}
function foo2() {
// upload a file
}
私はredirect()
メソッドを使用した後foo2()
ランニングを保つにはどうすればよいですか?
redirect()
の後にfoo2()
と呼ぶ理由は、アップロード時間を節約したいからです。ユーザーがsite_url('competitor/main')
にファイルをアップロードすると、機能はfoo()
になり、すぐにcompetitor/main
ページにリダイレクトされ、foo2()
がバックグラウンドで実行されます。
これは当てはまりません。私はこれを試してみたところfoo(){sleep(30); }それは間違いなくページの読み込みをブロックします。 – Ben
@Benこれは期待していますが、最初に 'redirect()'を呼び出すと、 'foo()'はまったく実行されません。 –
これは本当ですが、前に置くとバックグラウンドで実行されないため、問題を解決できません。以下の私の提案を参照してください。 – Ben