[英]Fatal Error - 'Mongo' class not found
我正在嘗試執行此操作:
<?php
// connect
$m = new Mongo();
?>
但是我收到以下錯誤:
致命錯誤:在C:\\ wamp \\ www .....中找不到類'Mongo'
我已經很好地遵循了MongoDB的安裝要求(包括將DLL添加到ext和php.ini中),我已經啟動了mongod.exe,WAMP正在運行。
我已經在另一台Windows 7計算機(Windows 7 Professional)上運行它。 那讓我感到好奇。 因此,現在我的Windows 7 Enterprise SP1計算機具有與http.conf
相同的http.conf
, php.ini
, C:\\wamp\\bin\\mongodb
內容(因此DB是完全相同的)和完全相同的批處理文件來啟動mongod.exe
專業機器。
但是,我在Win7 Enterprise SP1計算機上所能做的就是通過命令行連接。 我的Win7 Professional計算機的phpinfo()
包含: 我的Win7 Enterprise SP1計算機沒有任何對MongoDB的引用。
我用來啟動MongoDB的批處理文件的內容:
"C:\wamp\bin\mongodb\bin\mongod.exe" --logpath "C:\wamp\bin\mongodb\logs\error.log" --logappend --dbpath "C:\wamp\bin\mongodb\data\db" --directoryperdb --service
Net Start "MongoDB"
pause
問題出在PHP驅動程序( php_mongo.dll
)。 由於某些原因,Apache / WAMP只是不喜歡mongo-1.1.4-php5.3vc6ts
版本。 我的Windows 7 Professional計算機具有mongo-1.2.5-php5.3vc9ts
版本。 那是兩台機器之間的唯一區別。
我最初一直在Windows 7 Enterprise計算機上使用mongo-1.2.5-php5.3vc9ts
版本的驅動程序,但是在對問題進行故障排除時,更改為mongo-1.1.4-php5.3vc6ts
版本。 因此,最初的問題實際上可能只是數據庫路徑data\\db
不存在/找不到(並且在運行/啟動mongod.exe
時需要使用--dbpath
進行指定)。
如果php CLI中存在此問題,則應將extension=mongo.so
添加到/etc/php5/cli/php.ini
文件中
在Ubuntu上,我使用了本教程 。 安裝完成后,回顯phpinfo()並使用“掃描此目錄是否有其他.ini文件”來檢查mongo.ini文件是否位於phpinfo中提到的正確目錄中。
在phpinfo頁面中查看您的PHP二進制文件的確切編譯器名稱,然后嘗試重新安裝基於相同編譯器構建的mongo驅動程序。
http://www.php.net/manual/zh/mongo.installation.php#mongo.installation.windows
您正在使用帶有線程安全的Visual Studio 6上的mongo驅動程序。 (vs6ts表示)
類似的問題是由編譯器問題引起的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.