2013-04-07 63 views
0

我想知道如何從存儲在網絡服務器上的PHP文件中運行MongoDB命令。我想要做的是從轉儲文件導入數據庫,然後 - 運行MongoDB服務 - 調用外部.jar文件,該文件使用我剛剛導入的MongoDB文件,而服務正在運行。我已經安裝了用於PHP的MongoDB驅動程序(我在Windows的xampp服務器上測試了這個),但我找不到任何指示運行正常MongoDB命令的確切過程的例子(在我的例子中,'mongoexport') 。據我所知,MongoDB的服務是通過啓動:從存儲在網絡服務器上的PHP文件運行MongoDB命令

$m = new MongoClient(); 

回答

0

您可能會產生混淆database commands有與MongoDB中附帶的binary tools。諸如mongoexportmongodump之類的工具不會通過驅動程序執行。相反,它們是獨立的C++程序。

您當然可以通過PHP來執行這些操作,但是這樣做需要通過類似popen()或Symfony的Process component等庫來執行二進制文件。如果你在Windows上運行PHP,我會推薦使用Symfony組件,因爲它在PHP的popen()接口上有一些額外的代碼來提高Windows的兼容性。

如果您希望通過PHP執行數據庫命令,您將需要使用MongoDB::command(),除非該命令在MongoDB或MongoCollection對象(如MongoCollection::aggregate())上具有輔助方法。

相關問題