2012-12-22 26 views
4

我有MAMP 1.9 MAC OSX 10.8.2使用PHP 5.3 我安裝了MongoDB和PHP擴展mongo.so並將它添加到我的php.ini中。自動加載配置不加載MongoDB類

我可以在控制檯上運行MongoDB,我的phpinfo說MongoDB支持已啓用,但我無法運行下面的PHP腳本。

<?php $connection = new MongoClient(); ?>

PHP來了一個致命的錯誤:

Class 'MongoClient' not found

東西似乎是錯了我的MAMP的自動加載配置(或擴展安裝)。

+0

你重新啓動Apache?您是否將擴展名添加到Apache目錄中的php.ini文件中? –

+0

是肯定的,說的phpinfo它的啓用 - 我不認爲這是一個MongoDB的問題,我認爲PHP根本沒有找到包括路徑蒙戈類 - 順便說一句:那些人在那裏通常是? –

+0

奇怪的是,如果我運行這個... '$連接=新蒙戈();' ...它說: '致命錯誤:未捕獲的異常「MongoConnectionException」有消息「連接失敗:無效參數'在/Applications/MAMP/htdocs/mongo.php:4堆棧跟蹤:#0 /Applications/MAMP/htdocs/mongo.php(4):Mongo - > __ construct()#1 {main}拋出/應用程序/MAMP/htdocs/mongo.php在線4' 難道這不是意味着PHP知道不知何故,其中蒙戈類? –

回答

2

正如Sammaye在上面的評論中提到的那樣,它看起來像你只是在運行一箇舊版本的驅動程序。您可以通過傾銷Mongo::VERSIONphpversion('mongo')返回值獲取最新版本。通過PECL安裝/升級變頻器的說明也是documented;但是,我們不再在GitHub上提供預編譯版本(雖然我們最近已開始將Windows版本發佈到S3),但GitHub很快將刪除存儲庫下載。

+0

進行升級謝謝,是的,這是由於驅動版本。 –

0

我有同樣的問題,因爲我改變了錯誤的php.ini文件。於是我就下面的命令

echo phpversion('mongo');

,把Loaded Configuration File這是/Applications/MAMP/bin/php/php5.4.4/conf/php.ini和改變它。

重新啓動的Apache和它working.yay !!!