[解決済み】phpでバックグラウンドプロセスを実行する
2022-04-02 07:55:01
質問
ユーザーの操作でディレクトリのコピーを実行したいのですが、ディレクトリがかなり大きいので、コピーが完了するまでの時間をユーザーに意識させずに実行できるようにしたいのですが、可能でしょうか?
何かご提案があれば、ぜひお願いします。
解決方法は?
Linuxマシン上で動作していると仮定して、私はいつもこのように対処しています。
exec(sprintf("%s > %s 2>&1 & echo $! >> %s", $cmd, $outputfile, $pidfile));
これは、コマンドを起動します。
$cmd
にリダイレクトし、コマンド出力を
$outputfile
に、プロセスIDを書き込みます。
$pidfile
.
これによって、プロセスが何をしているのか、まだ動いているのかを簡単に監視することができます。
function isRunning($pid){
try{
$result = shell_exec(sprintf("ps %d", $pid));
if( count(preg_split("/\n/", $result)) > 2){
return true;
}
}catch(Exception $e){}
return false;
}
関連
-
[解決済み】PHPからPythonスクリプトを実行する
-
[解決済み】メッセージ。Trying to access array offset on value of type null [重複]配列のオフセットにアクセスしようとしています。
-
[解決済み】MySQLのカラム数が1行目の値数と一致しない【非公開
-
[解決済み] PHPで配列から要素を削除する
-
[解決済み] PHPでSQLインジェクションを防ぐにはどうしたらいいですか?
-
[解決済み] PHPでHTML/XMLをパースして処理する方法とは?
-
[解決済み] PHPのエラーを表示させるにはどうしたらいいですか?
-
[解決済み] PHPのstartWith()関数とendsWith()関数
-
[解決済み】PHPの'foreach'は実際どのように動作するのですか?
-
[解決済み] リファレンス - このシンボルはPHPで何を意味するのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み】「初期通信パケットの読み込み」でMySQLサーバーに接続できなくなり、システムエラーになる。0
-
[解決済み】新しいPHPMailerはPHPMailerAutoload.phpが必要?
-
[解決済み】stdClassクラスのオブジェクトが文字列に変換されない。
-
[解決済み】Apache + PHPで「ヘッダの前にスクリプトの出力が終了する」件
-
[解決済み】 libapache2-mod-php7 パッケージが見つからない。
-
[解決済み】子テーマのCSSが親テーマをオーバーライドしない
-
[解決済み】未定義の関数mysql_query()をLoginで呼び出す【重複
-
thinkphp5 timestamp 非整形の数値に遭遇した。
-
[解決済み] SSLエラー SSL3_GET_SERVER_CERTIFICATE:証明書の検証に失敗しました。
-
[解決済み】PHPでの非同期シェル実行