Fatal Error - 'Mongo' class not found
我正在尝试执行此操作:
1 2 3 4 5 6
| <?php
// connect
$m = new Mongo();
?> |
但我收到以下错误:
Fatal error: Class 'Mongo' not found in C:\\wamp\\www.....
信息:
-
PHP: 5.38
-
MongoDB:mongodb-win32-i386-2.0.2
-
MongoDB PHP 驱动程序:mongo-1.1.4-php5.3vc6ts
-
WampServer:2.2
-
操作系统:Windows 7 企业版 SP1
我已经按照 MongoDB 安装(包括将 DLL 添加到 ext
- 你重启apache了吗?还要检查您是否编辑了正确的 php.ini(phpinfo() 表示已加载的那个)
-
@Mchl 是的,我重新启动,是的,我根据 phpinfo() 编辑了正确的 php.ini
-
只是为了检查:www php.ini 在 C:\\wamp\\bin\\apache\\apache2.x.y\\bin 中。对于 CLI,php.ini 位于 C:\\wamp\\bin\\php\\php5.3.8
-
@Mchl phpinfo() 表示加载的 php.ini 位于 C:\\wamp\\bin\\apache\\Apache2.2.21\\bin\\php.ini 并且这是我添加的 extension=php_mongo.dll 。
-
那应该没问题。我不知道还有什么可看的。
-
你有没有让这个工作亚当?
-
@TylerBrock 还没有。可以尝试安装 PHP、MySql
-
在 phpinfo 页面中查看您的 PHP 二进制文件的确切编译器名称,并尝试重新安装在同一编译器上构建的 mongo 驱动程序。
http://www.php.net/manual/en/mongo.installation.php#mongo.installation.windows
您现在使用的是在 Visual Studio 6 上构建的线程安全的 mongo 驱动程序。 ( vs6ts 意味着它)
类似的问题是由编译器问题引起的;
http://www.php.net/manual/en/mongo.installation.php#104223
434511
问题在于 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 指定)。
434511
如果这个问题存在于 php CLI 中,你应该将 extension=mongo.so 添加到你的 /etc/php5/cli/php.ini 文件中
434511
在 Ubuntu 上,我使用了本教程。安装后,回显 phpinfo() 并检查 mongo.ini 文件是否位于 phpinfo 中提到的正确目录中,使用 \\'Scan this dir for additional .ini files\\'
-
在 phpinfo 页面中查看您的 PHP 二进制文件的确切编译器名称,并尝试重新安装在同一编译器上构建的 mongo 驱动程序。
http://www.php.net/manual/en/mongo.installation.php#mongo.installation.windows
您现在使用的是在 Visual Studio 6 上构建的线程安全的 mongo 驱动程序。 ( vs6ts 意味着它)
类似的问题是由编译器问题引起的;
http://www.php.net/manual/en/mongo.installation.php#104223
434511
问题在于 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 指定)。
434511
如果这个问题存在于 php CLI 中,你应该将 extension=mongo.so 添加到你的 /etc/php5/cli/php.ini 文件中
434511
在 Ubuntu 上,我使用了本教程。安装后,回显 phpinfo() 并检查 mongo.ini 文件是否位于 phpinfo 中提到的正确目录中,使用 \\'Scan this dir for additional .ini files\\'
问题在于 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_mongo.dll 而不是 php_mongodb.dll。 PECL 库中有 2 个包。 vc6 和 vc9 还需要安装适当的 C Redistributable 库。版本 x86 或 x64 取决于 Apache 的编译版本
如果这个问题存在于 php CLI 中,你应该将 extension=mongo.so 添加到你的 /etc/php5/cli/php.ini 文件中
在 Ubuntu 上,我使用了本教程。安装后,回显 phpinfo() 并检查 mongo.ini 文件是否位于 phpinfo 中提到的正确目录中,使用 \\'Scan this dir for additional .ini files\\'
在 phpinfo 页面中查看您的 PHP 二进制文件的确切编译器名称,并尝试重新安装在同一编译器上构建的 mongo 驱动程序。
http://www.php.net/manual/en/mongo.installation.php#mongo.installation.windows
您现在使用的是在 Visual Studio 6 上构建的线程安全的 mongo 驱动程序。 ( vs6ts 意味着它)
类似的问题是由编译器问题引起的;
http://www.php.net/manual/en/mongo.installation.php#104223