0

PHP を使用して複数の Linux コマンドを実行することは可能ですか。Mongodb データベースを使用しています。複数のコレクションをインポートする場合は、コレクションごとに次のコマンドを個別に実行しています。

mongoimport --db test --collection colour --file colour.json
mongoimport --db test --collection shape --file shape.json
mongoimport --db test --collection size --file size.json

現在、少なくとも 10 個のコレクションがあり、Linux コマンド ラインでそれぞれを個別に実行する必要があります。これを行うためのより良い方法があるはずです。私が考えているのは、これを行うphpスクリプトを書くことです。

どんなアイデア、提案も本当に役に立ちます。前もって感謝します。

4

2 に答える 2

2

PHP で事前にすべてのシェル コマンドを作成し、それらを一度に実行することができます。

$collections = array('color', 'shape', 'size');
$command = '';

foreach($collections as $collection) {
    $command .= 'mongoimport --db test --collection ' . $collection . ' --file ' . $collection . '.json; ';
}

shell_exec($command);

これにより、 への複数回の呼び出しがなくなりますshell_exec()。ただし、おそらくPHP mongo APImongoimportで使用できます。

于 2013-11-09T20:52:23.543 に答える
0

shell-exec を使用して、PHP スクリプトから OS コマンドライン コマンドを実行できます。http://php.net/manual/en/function.shell-exec.phpを参照してください。

于 2013-11-09T20:44:20.760 に答える