2013-11-09 44 views
0

是否可以使用PHP运行多个linux命令。我正在使用Mongodb数据库,如果我想导入多个集合,我为每个集合分别运行以下命令。如何使用PHP运行多个linux命令

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脚本,这将为我做这个。

任何想法,建议将非常有帮助。提前致谢。

回答

2

你可以让PHP事先创建所有的shell命令,然后再运行一次全部:

$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 API中可能有mongoimport