MongoClient 无法使用 php [英] MongoClient not working with php
问题描述
我正在尝试将 mongodb 与 php 结合使用,但我不断收到此错误
I'm trying to use mongodb with php but I keep getting this error
("找不到类 'MongoClient'")
("Class 'MongoClient' not found")
每当我尝试此代码时:
$m = new MongoClient();
奇怪的是,如果我运行 get_loaded_extensions()
,mongodb 会出现,它也会出现在 phpinfo()
上.我在 php.ini 文件上也有 extension=mongodb.so
.
The weird part is that if I run a get_loaded_extensions()
, mongodb shows up and it also shows up on the phpinfo()
. I also have extension=mongodb.so
on the php.ini file.
我在 debian 上运行 MongoDB shell 版本:2.6.11,php 运行 mongodb 版本 1.1.2.
I'm on debian running MongoDB shell version: 2.6.11 and php is running mongodb version 1.1.2.
推荐答案
您正在混淆 Mongo
和 MongoDB
扩展.(已弃用)Mongo
扩展通过 mongo.so
加载并提供 MongoClient
.您使用的是较新且首选的 MongoDB
扩展 (mongodb.so
),因此您应该使用:
You're mixing up the Mongo
and MongoDB
extensions.
The (deprecated) Mongo
extension loads via mongo.so
and provides MongoClient
.
You're using the newer and preferred MongoDB
extension (mongodb.so
) so you should be using:
$client = new MongoDB\Client("mongodb://localhost:27017");
参见:http://php.net/manual/en/set.mongodb.php与 http://nl1.php.net/manual/en/mongo.setup.php
这篇关于MongoClient 无法使用 php的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!