【发布时间】:2013-10-05 22:23:48
【问题描述】:
有没有办法使用学说的 DriverManager::getConnection() 方法创建 mongodb 连接?大多数示例使用 yaml 文件来配置连接。我正在寻找一种仅使用 php 代码建立教义-mongodb 连接的方法。
【问题讨论】:
标签: php mongodb doctrine dbal doctrine-mongodb
有没有办法使用学说的 DriverManager::getConnection() 方法创建 mongodb 连接?大多数示例使用 yaml 文件来配置连接。我正在寻找一种仅使用 php 代码建立教义-mongodb 连接的方法。
【问题讨论】:
标签: php mongodb doctrine dbal doctrine-mongodb
Doctrine\DBAL\DriverManager 与 doctrine/mongodb 库无关。 DBAL 类似于学说/mongodb,因为它们都是没有建模方面的数据库抽象层,但 DBAL 特定于 SQL 驱动程序(例如 PDO、DB2)。
在 DBAL 中,有各种驱动类,而管理器类只是抽象了它们的构造。对于教义/mongodb,不需要管理器,因为 MongoDB 连接都使用 PECL 驱动程序自己的 MongoClient 类。构造一个Doctrine\MongoDB\Connection 实例就足够了。
【讨论】:
查看Doctrine ODM Introduction docs,这似乎是正确的方法:
<?php
use Doctrine\ODM\MongoDB\DocumentManager;
use Doctrine\MongoDB\Connection;
$connection = new Connection();
$dm = DocumentManager::create($connection, $config);
?>
【讨论】: