私はこのコードを持っています:
<?php
exec("sleep 15m; ls -l");
echo "Done";
?>
しかし、スタックし、15分が経過するまでロードを停止しません。とにかく、execの実行を待たないでください。
PHPから-exec
exec
...
注:プログラムがこの関数で開始された場合、プログラムがバックグラウンドで実行を継続するには、プログラムの出力をファイルまたは別の出力ストリームにリダイレクトする必要があります。そうしないと、プログラムの実行が終了するまでPHPがハングします。
したがって、出力をリダイレクトしてバックグラウンドで開始する必要があります
exec("(sleep 15m; ls -l) >/dev/null 2>&1 &");
私がそれを正しく理解しているなら、あなたはバックグラウンドであなたのコマンドを実行したいと思うでしょう:
exec("(sleep 15m ; ls -l) &")