【发布时间】:2016-10-18 09:00:47
【问题描述】:
我正在尝试使用客户端库 https://github.com/mongodb/mongo-php-library/blob/master/docs/tutorial/install-php-library.txt 从 drupal 连接到 mongo。 我下载了源代码。现在我想在 .module 文件中使用它
myModule模块内的目录结构-
--/MongoDB(库的src文件夹)
--myModule.module
--myModule.info
在myModule.module 文件内 -
function my_autoloader($class) {
print_r($class);
include DRUPAL_ROOT.'/sites/all/modules/myModule/MongoDB/' . $class . '.php';
}
spl_autoload_register('my_autoloader');
function myModule_init() {
//sample code to connect to mongo
$client = new MongoDB\Client("mongodb://xx.xx.xx.xx:27017");
$collection = $client->demo->beers;
$result = $collection->insertOne( [ 'name' => 'Hinterland', 'brewery' => 'BrewDog' ] );
echo "Inserted with Object ID '{$result->getInsertedId()}'";
}
我遇到错误
Fatal error: Class 'MongoDB\Client' not found
我做错了什么。有什么想法???
注意:当我尝试使用这个时,我可以连接
$m = new MongoDB\Driver\Manager("mongodb://xx.xxx.xx.xx:27017");
echo "Connection to database successfully";
但是为什么不使用客户端???
【问题讨论】:
-
让它工作,必须添加 $class= str_replace('\\', '/', $class);并从路径中删除了 MongoDB
-
那么请将您的问题标记为已解决。
标签: php mongodb drupal drupal-7 autoload